js中argument

argument

说明:

  在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。

属性:

  length, 获取arguments对象的长度。

 

  callee, 引用当前正在执行的函数。

 

编辑本段举例:

1.参数的长度

  window.onload = function(){

 

  abc(1,2,3);

 

  }

 

  function abc(){

 

  //虽然这里没有引用参数,但是arguments仍能捕获到

 

  alert(arguments.length);

 

  }//output 3

2.隐藏的参数

  function abc(x,y){

 

  alert(x+","+y);

 

  for(var i=0;i<=arguments.length;i+=){

 

  alert(" "+arguments[i]);

 

  }

 

  }//output: 1,2

 

  1 2 3

3.改变参数值

  function abc(x,y,z){

 

  arguments[2] = "hello";

 

  for(var i=0;i<=arguments.length;i+=){

 

  alert(" "+arguments[i]);

 

  }

 

  }//output: 1 2 hello

4.递归

  求1到n的自然数之和

 

  function add(x){

 

  if(x == 1) return 1;

 

  else return n + arguments.callee(n-1);

 

  }

 

  其实callee对于没有命名的函数调用自身时就是一个福音了,比如对于没有命名的函数求1到n自然数之和

 

  var result = function(x){

 

  if(x == 1) return 1;

 

  return x+arguments.callee(x-1);

 

  }

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。