Javascript中arguments和arguments.callee的区别浅析
更新时间:2015年04月24日 09:35:56 投稿:junjie
这篇文章主要介绍了Javascript中arguments和arguments.callee的区别浅析,本文用一个实例来理解它们的区别,需要的朋友可以参考下
通过一个例子来理解下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="调用" onclick="f(1,2)" />
运行后的结果为:
复制代码 代码如下:
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){}"
相关文章
分享我学习js的过程 作者aircy javascript学习教程
分享我学习js的过程 作者aircy javascript学习教程...2007-02-02深入理解JavaScript系列(40):设计模式之组合模式详解
这篇文章主要介绍了深入理解JavaScript系列(40):设计模式之组合模式详解,组合模式(Composite)将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性,需要的朋友可以参考下2015-03-03深入理解JavaScript系列(43):设计模式之状态模式详解
这篇文章主要介绍了深入理解JavaScript系列(43):设计模式之状态模式详解,状态模式(State)允许一个对象在其内部状态改变的时候改变它的行为,对象看起来似乎修改了它的类,需要的朋友可以参考下2015-03-03javascript开发技术大全-第1章javascript概述
JavaScript 为 HTML 设计师提供了一种编程工具HTML 创作者往往都不是程序员,但是 JavaScript 却是一种只拥有极其简单的语法的脚本语言!几乎每个人都有能力将短小的代码片断放入他们的 HTML 页面当中。2011-07-07
最新评论