javascript中函数的隐含参数:arguments
arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。Arguments是一个类似数组但不是数组的对象,说它类似数组是因为其具有数组一样的访问性质及方式, 可以由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。还有就是arguments对象存储的是实际传递给函数的参数,而不局限于函数声明所定义的参数列表,而且不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。
在javascript中,不需要明确指出参数名,就能访问它们。如:
用arguments[0]可以访问第一个参数,如此类推。
functionName.caller调用方法的方法内容 arguments.callee被调用的方法内容
arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。Arguments是一个类似数组但不是数组的对象,说它类似数组是因为其具有数组一样的访问性质及方式, 可以由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。还有就是arguments对象存储的是实际传递给函数的参数,而不局限于函数声明所定义的参数列表,而且不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。
在javascript中,不需要明确指出参数名,就能访问它们。如:
function hi(){ if(arguments[0]=="andy"){ return; } alert(arguments[0]); }
用arguments[0]可以访问第一个参数,如此类推。
functionName.caller调用方法的方法内容 arguments.callee被调用的方法内容
function testFunction() { //可以不命名参数 而得到参数内容 if(arguments[0]=='111') { alert('w'); } if(arguments[0]=='222') { alert('x'); } //返回谁调用了该函数 就是function(){} 匿名函数 alert(testFunction.caller); //该函数本身的代码 alert(arguments.callee); }