js中argument
argument
说明:
在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。
属性:
length, 获取arguments对象的长度(实参)。
callee, 引用当前正在执行的函数。
1.可以借用arguments.length可以来查看实参和形参的个数是否一致:
function add(a, b) {
var realLen = arguments.length;
console.log("realLen:", arguments.length);
var len = add.length;
console.log("len:", add.length);
if (realLen == len) {
console.log('实参和形参个数一致');
} else {
console.log('实参和形参个数不一致');
}
};
add(1,2,3,6,8);
2.可以借用arguments.callee来让匿名函数实现递归:
var sum = function(n) {
if(n == 1) {
return 1;
} else {
return n + arguments.callee(n-1);
}
}
console.log("sum =", sum(5));