JavaScript中的argument

来源:互联网 发布:金蝶数据库恢复 编辑:程序博客网 时间:2024/06/05 18:36

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


 
  }

0 0