函数七重关之三(参数传递)
看几种情况
1、少传参数
function fun(a){
console.log(a);
}
fun();
↑运行结果是undefined
2、少传参数,函数体内部做的是算术运算
function add(a,b,c){
var sum = a + b + c;
console.log(sum);
}
add(1);
↑运行结果是NaN(代表无法计算)
3、多传参数
无影响
4、调用的时候多传参数了,而我一定要在函数中访问到这个参数,怎么实现?
function add(a,b,c){
console.log(arguments);
var sum = a + b + c;
console.log(sum);
}
add(1,2,3,4);
运行结果:
根据这个特性,实现一个灵活的累加器:
function add(){
var sum = 0;
for(var i = 0;i < arguments.length;i++){
sum = sum + arguments[i];
}
return sum;
}
add(1,2,3,4);