Function对象
1.length
function test(a,b){
console.log(test.length);//2
}
test();
length表示的时当前函数的形参个数
2.arguments.callee
function test2(){
console.log(arguments.callee);//输出函数本身
//用法
arguments.callee();
//写法等同于
//test2();
}
用于函数的递归调用,只能用在函数内部
3.arguments.length
function test3(a,b){
console.log(arguments.length);
}
test(1,2);
输出的时函数的实参个数,可以用在封装中时对参数的个数的限制。
求输入数据的平均数(要求不能使用数组)
function avg(){
if(arguments.length < 1){
console.log('报错'); //正确写法应抛出异常
}else{
var res = 0;
for(var i = 0; i< arguments.length;i++){
res += arguments[i];
}
res /= arguments.length;
console.log(res);
}
}
avg(1,2,3,4);//2.5
这里的arguments数据类型并不是数组,而是伪数组。
var wsz = {0 : 'Bob',1: 'tom',2: 'tian',length: 3 };
伪数组的要求key必须是0,1,2,3…的数,而且最后一个必须是length且值必须是前面成员的总数。