arguments的用法

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));

 

posted @ 2015-05-27 00:11  小菜鸡12315  阅读(247)  评论(0编辑  收藏  举报