arguments 对象
在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们。
例如,在函数 sayHi() 中,第一个参数是 message。用 arguments[0] 也可以访问这个值,即第一个参数的值(第一个参数位于位置 0,第二个参数位于位置 1,依此类推)
function sayHi() {
if (arguments[0] == "bye") {
return;
} alert(arguments[0]);
}
指定参数个数的重载
function ArgTest(){
var s = "";
s += "The individual arguments are: "
for (n=0; n< arguments.length; n++){
s += ArgTest.arguments[n];
s += " ";
}
return(s);
}
alert(ArgTest(1, 2, "hello", new Date())); 获得数字
function ArgTest(){
var s = 0;
for (n=0; n< arguments.length; n++){
s += ArgTest.arguments[n];
}
return(s);
}
alert( ArgTest(1, 2, 3, 4) );
用callee递归来计算1到n的自然数之和:
var sum=function(n){
if(1==n) {
return 1;
} else {
return n + arguments.callee(n-1);
}
}
alert(sum(100));