function.length和arguments的区别
function.length:接收到函数体外的参数计算长度
arguments:接收到函数体内的参数计算长度
1 /**
2 * 函数参数长度和伪数组(arguments)长度不一样! -> 接收到函数体外的参数计算
3 */
4 function func1() { }
5 function func2(a, b) { }
6 console.log(func1.length);
7 console.log(func2.length);
8
9
10 /**
11 * arguments可能出现在那 -> 接收到函数体内的参数计算.
12 */
13 function add() {
14 console.log('参数长度:', arguments.length)
15 var sum = 0, len = arguments.length;
16 for (var i = 0; i < len; i++) {
17 sum += arguments[i];
18 }
19 return sum;
20 }
21
22 console.log(add(1, 2, 3, 6));