arguments对象被用于函数中,它类似于函数参数组成的数组,但它具有不同于数组的额外属性。
即使实参个数超过形参个数,多余的参数依然可以通过该对象访问。
即使实参个数超过形参个数,多余的参数依然可以通过该对象访问。
function
maxNum()
... {
var m = Number.NEGATIVE_INFINITY; //负无穷大
for(var i=0;i<arguments.length;i++)
...{//遍历每个参数
if(arguments[i] > m)
m = arguments[i];
}
return m;
}
var largest = maxNum( 1 , 10 , - 19 , 100 , 999999 , 89 );
document.write( " largest= " + largest + " <br/> " );
function f1(x)
... {
document.write("x=" + x + "<br/>");
arguments[0] = "New"; //改变x的值
document.write("x=" + x + "<br/>");
}
f1( " Old " );
/*arguments对象的callee属性,它指代当前对象的所属函数*/
function factorial(x)
... {
if(x <= 1)
return 1;
return x*arguments.callee(x-1); //调用函数本身
}
document.write( " 5!= " + factorial( 5 ));
... {
var m = Number.NEGATIVE_INFINITY; //负无穷大
for(var i=0;i<arguments.length;i++)
...{//遍历每个参数
if(arguments[i] > m)
m = arguments[i];
}
return m;
}
var largest = maxNum( 1 , 10 , - 19 , 100 , 999999 , 89 );
document.write( " largest= " + largest + " <br/> " );
function f1(x)
... {
document.write("x=" + x + "<br/>");
arguments[0] = "New"; //改变x的值
document.write("x=" + x + "<br/>");
}
f1( " Old " );
/*arguments对象的callee属性,它指代当前对象的所属函数*/
function factorial(x)
... {
if(x <= 1)
return 1;
return x*arguments.callee(x-1); //调用函数本身
}
document.write( " 5!= " + factorial( 5 ));