js中函数传参的情况
- <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">- /**
*
* js函数
*
* java:
* public [static] return_type method_name([params]){
* return "";
* }
*
* JS:
* function function_name([params]){
* return undefined; 默认返回该值
* }
*
* 在js中 声明方法 需要用function关键字标识
* 方法的默认返回值是 undefined
*
* 如果要返回数据 则需显示指定return
*
* 在js中 函数没有重载的概念
*
* 如果在一个对象中出现多个同名的函数的时候 它的生效的函数是 最后解析的那一个函数
*
* 参数的匹配方式
* 首先 参入的参数会和形式参数进行匹配
* 第一种 个数相同的情况 形参和实参就会一一匹配
* 第二种 形参个数大于实参个数的时候 多余的形参的默认值是undefined
* 第三种 形参个数小于实参个数 多余的实参会被丢弃掉
*
* 不管形参的情况 所有传入的参数都会被封装到arguments对象中 他有点像可变参数
*
* 以函数式声明的函数一定要给定函数名
*
*
* 在js 函数就是对象
*
*
*
*/
function test(){- }
/* function add(n1,n2){
return n1+n2;
}*/
/*function add(n1){
console.log(arguments);
return n1+100;
}*/
var n1 = add(200);- var n2 = add(200,200);
var n3 = add(200,200,100);
var n4 = add(200,200,200,500);
console.log(n1);
console.log(n2);
console.log(n3);
console.log(n4);
/**
* 采用该种方式声明的方法 可以在任何地方调用
* @returns {*}
*/
function add(){
var args = arguments;
if(args.length===1){
return args[0]+101;
}else if(args.length === 2){
return args[0]*args[1];
}else{
return "还没有被实现";
}
}
</script>
</head>
<body>- </body>
</html>
js中函数传参的情况的更多相关文章
- [js]js中函数传参判断
1,通过|| function fun(x,y){ x=x||0; y=y||1; alert(x+y); } fun(); 2.通过undefined对比 function fun(x,y){ if ...
- Vue.js中组件传参的方法 - 基于webpack模板
在Vuejs中, 组件之间的传参是今天第一次接触, 之前写的组件互相之间都是独立的, 弗敢专也, 必以分人 环境: node.js npm vue-cli 以上安装请自行百度 一.项目创建 $ vue ...
- 兼容性js中setTimeout 传参“保值”方案
这里所谓“保值”,是指在setTimeout中指定的时间后,执行指定的方法所用到的“参数”值,跟执行setTimeout时该“参数”值一样.是不是有点懵?看如下例子: ================ ...
- 关于C中函数传参的一点理解
一般来说c传值分为传值与传指针,Java里没有指针,因此只有传值,但是Java里传值分为简单变量传值和引用型变量传值,从本质上来说这两者没啥区别. 下面主要说的是传参时对原变量的影响: 最初练习创建单 ...
- 验证python中函数传参是引用传递
定义: 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数. 引用传递(pass by reference)是指在 ...
- JS——变量和函数的预解析、匿名函数、函数传参、return
JS解析过程分为两个阶段:编译阶段.执行阶段.在编译阶段会将函数function的声明和定义都提前,而将变量var的声明提前,并将var定义的变量赋值为undefined. 匿名函数: window. ...
- js中函数的参数为函数的情况即回调函数
js中函数的参数可以是数组对象也可以是函数,当参数为函数时我们叫做回调函数 //定义回调函数function B() { console.log("函数B")setTimeout( ...
- python中给函数传参是传值还是传引用
首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...
- C语言 指针在函数传参中的使用
int add(int a, int b) //函数传参的时候使用了int整型数据,本身是数值类型.实际调用该函数时,实参将自己拷贝一份,并将拷贝传递给形参进行运算.实参自己实际是不参与运算的.所 ...
随机推荐
- 搭建openwrt_x86虚拟机环境
1.下载源码 http://downloads.openwrt.org/snapshots/trunk/x86/openwrt-x86-generic-combined-ext4.img.gz 2.格 ...
- 静态编译opencv3.4.0
问题: 编译了静态库之后可以不要那么多dll 解决办法: 其实和编译动态库的区别就在于: Cmake里面操作的时候,去掉下面这个选项的勾勾 BUILD_SHARED_LIBS
- asp.net Repeater使用例子,包括分页
<style type="text/css"> .tab{border-collapse:collapse; margin:0 auto;} .tab th ...
- C# OracleBulkCopy 批量插入oracle数据库的方法
只有安装了oracle 11G客户端的机器上才可以用,要用到ODP.NET组件中的oracleDataAccess.DLL,命名空间引用为Oracle.DataAccess.Client; 引用:Or ...
- theme为dialog的Activity如何充满全屏
转自:http://blog.csdn.net/fzh0803/article/details/9787615 分类: android_点滴记录2013-08-06 10:33 2005人阅读 评论 ...
- Log4j2的基本使用
Log4j2是Log4j1.x的的升级版,其中也有很大的不同,最大的区别就是由以前的properties配置文件改为xml/json/yaml配置文件. 其中配置文件的位置官方说明如下: Log4j ...
- Java\学习——字符串
import java.util.Scanner; public class cys1 { /** * @param args */ public static void main(String[] ...
- [转]SQL Server 中 Cast 与 Convert
两者都用于:将一种数据类型的表达式转换为另一种数据类型的表达式. 安装有 Sql Server 2008 时可以浏览:ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-C ...
- 深度优先搜索DFS(二)
总结下图里面的常用模板: DFS(u){ vis[u]=true; for(从u出发能到达的所有顶点v){ if(vis[v]==false){ DFS(v); } } } DFSTrave(G){ ...
- uploadify是通过flash上传,服务器获取type为application/octet-stream
uploadify是通过flash上传,服务器获取type为application/octet-stream,因此允许上传的类型要加上application/octet-stream