Javascript中arguments和arguments.callee的区别浅析
Javascript中arguments和arguments.callee的区别浅析
发布时间:2016-12-30 来源:查字典编辑
摘要:通过一个例子来理解下arguments与arguments.callee的具体区别:代码如下:复制代码代码如下:functioncheck(...

通过一个例子来理解下arguments与arguments.callee的具体区别:

代码如下:

复制代码 代码如下:

<script type="text/javascript">

function check(args){

var ac = args.length;

var ex = args.callee.length;

document.write("ac:" + ac + '<br>');

document.write("ex:" + ex + '<br>');

if (ac != ex) {

document.write("wrong number of arguments: expected: " + ex + "; actually passed" + ac + '<br>');

}

}

function f(x, y, z) {

check(arguments);

document.write(x + y + z);

}

</script>

调用方法:

复制代码 代码如下:

<input name="wr" type="button" value="调用" />

运行后的结果为:

复制代码 代码如下:

ac:2

ex:3

wrong number of arguments: expected: 3; actually passed2

NaN

我的理解:

arguments即调用对象,就是调用这个方法的对象

arguments.callee即当前对象,实际上就是返回当前执行的函数对象

通过这个例子,可以看出

arguments实际上是指函数“f(1,2)”

argument.callee实际上是指"function f(x,y,z){}"

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类