Javascript中arguments和arguments.callee的区别浅析
通过一个例子来理解下arguments与arguments.callee的具体区别:
代码如下:
<scripttype="text/javascript">
functioncheck(args){
varac=args.length;
varex=args.callee.length;
document.write("ac:"+ac+'<br>');
document.write("ex:"+ex+'<br>');
if(ac!=ex){
document.write("wrongnumberofarguments:expected:"+ex+";actuallypassed"+ac+'<br>');
}
}
functionf(x,y,z){
check(arguments);
document.write(x+y+z);
}
</script>
调用方法:
<inputname="wr"type="button"value="调用"onclick="f(1,2)"/>
运行后的结果为:
ac:2 ex:3 wrongnumberofarguments:expected:3;actuallypassed2 NaN
我的理解:
arguments即调用对象,就是调用这个方法的对象
arguments.callee即当前对象,实际上就是返回当前执行的函数对象
通过这个例子,可以看出
arguments实际上是指函数“f(1,2)”
argument.callee实际上是指"functionf(x,y,z){}"
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短