Javascript中arguments和arguments.callee的区别浅析


Posted in Javascript onApril 24, 2015

通过一个例子来理解下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){}"

Javascript 相关文章推荐
用prototype实现的简单小巧的多级联动菜单
Mar 24 Javascript
通过JavaScript控制字体大小的代码
Oct 04 Javascript
javascript之bind使用介绍
Oct 09 Javascript
动态的创建一个元素createElement及删除一个元素
Jan 24 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
Mar 03 Javascript
AngularJS教程 ng-style 指令简单示例
Aug 03 Javascript
jquery表单验证实例仿Toast提示效果
Mar 03 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
Jun 25 Javascript
详解使用Next.js构建服务端渲染应用
Jul 10 Javascript
Vue.js 父子组件通信的十种方式
Oct 30 Javascript
javascript操作元素的常见方法小结
Nov 13 Javascript
vue递归实现树形组件
Jul 15 Vue.js
Node.js实现Excel转JSON
Apr 24 #Javascript
js中for in语句的用法讲解
Apr 24 #Javascript
JScript中的条件注释详解
Apr 24 #Javascript
HTML5+setCutomValidity()函数验证表单实例分享
Apr 24 #Javascript
js闭包实现按秒计数
Apr 23 #Javascript
jQuery中使用each处理json数据
Apr 23 #Javascript
javascript数组去重方法汇总
Apr 23 #Javascript
You might like
php绘图中显示不出图片的原因及解决
2014/03/05 PHP
php简单解析mysqli查询结果的方法(2种方法)
2016/06/29 PHP
laravel中短信发送验证码的实现方法
2018/04/25 PHP
php生成微信红包数组的方法
2019/09/05 PHP
JS类中定义原型方法的两种实现的区别
2007/03/08 Javascript
javascript 文章截取部分无损html显示实现代码
2010/05/04 Javascript
jQuery实现当按下回车键时绑定点击事件
2014/01/28 Javascript
js实现省市联动效果的简单实例
2014/02/10 Javascript
巧用replace将文字表情替换为图片
2014/04/17 Javascript
jquery和js实现对div的隐藏和显示方法
2014/09/26 Javascript
javascript实现的全国省市县无刷新多级关联菜单效果代码
2016/08/01 Javascript
自动化测试读写64位操作系统的注册表
2016/08/15 Javascript
canvas实现简易的圆环进度条效果
2017/02/28 Javascript
Bootstrap输入框组件简单实现代码
2017/03/06 Javascript
javascript触发模拟鼠标点击事件
2019/06/26 Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
2019/09/09 Javascript
vue 使用v-for进行循环的实例代码详解
2020/02/19 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
python中threading超线程用法实例分析
2015/05/16 Python
Python解决抛小球问题 求小球下落经历的距离之和示例
2018/02/01 Python
python 列表删除所有指定元素的方法
2018/04/19 Python
python 中字典嵌套列表的方法
2018/07/03 Python
python 自定义对象的打印方法
2019/01/12 Python
Python骚操作之动态定义函数
2019/03/26 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
Django模板语言 Tags使用详解
2019/09/09 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
解决 jupyter notebook 回车换两行问题
2020/04/15 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Django-imagekit的使用详解
2020/07/06 Python
css3实现冲击波效果的示例代码
2018/01/11 HTML / CSS
国际贸易本科毕业生求职信
2014/09/26 职场文书
步步惊心观后感
2015/06/12 职场文书
2016教师读书思廉心得体会
2016/01/23 职场文书
Mysql 8.x 创建用户以及授予权限的操作记录
2022/04/18 MySQL
MySQL主从切换的超详细步骤
2022/06/28 MySQL