javascript的arguments对象
javascript的arguments对象:
当函数进行调用的时候会创建一个隐藏的对象arguments,此对象中存储实际传入函数的参数。此对象不能够显示的创建,此对象和数组非常的想象,比如可以使用索引访问对象中的单个参数,或者使用length属性值返回传入的参数的数量。
看一段代码实例:
<script type="text/javascript"> function a(x,y) { for(var i=0;i<arguments.length;i++) { alert(arguments[i]); } } a(1,2,3,4) </script>
以上代码可以依次弹出1,2,3,4四个参数,说明在arguments存放的是在调用函数时候实际传给函数的参数,而非仅仅是函数定义时的参数列表中的参数。使用arguments对象可以模拟实现函数的重载,例如可以根据传入参数的个数执行不同的代码。
arguments对象的callee属性:
此属性是对函数对象本身的引用,利用它可以实现以匿名方式递归函数,例如:
<script type="text/javascript"> var sum=function(n) { if(1==n) { return 1; } else { return n + arguments.callee(n-1); } } alert(sum(100)); </script>
以上代码实现了以匿名的方式递归调用sum函数。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。