- [function.]arguments[n],该对象代表正在执行的函数和调用它的函数的参数。
- Arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。
- Arguments是一个类似数组但不是数组的对象,说它类似数组是因为其具有数组一样的访问性质及方式,可以由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。
- arguments对象存储的是实际传递给函数的参数,而不局限于函数声明所定义的参数列表,而且不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。
function f1(){
if(arguments[0]=='111'){
return;
}
alert(arguments[0])
}
f1('112')
arguments对象的callee属性:
下面是一个阶乘的例子:arguments.callee指代当前的函数本身,常用来做递归操作和匿名函数的操作,而且有利于函数的封装性。
function f1(num){
if(num<=1) return 1;
else return num*arguments.callee(num-1);
}
alert(f1(5));