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 相关文章推荐
登陆成功后自动计算秒数执行跳转
Jan 23 Javascript
在JavaScript中使用NaN值的方法
Jun 05 Javascript
详解jQuery中的元素的属性和相关操作
Aug 14 Javascript
JavaScript使用DeviceOne开发实战(一) 配置和起步
Dec 01 Javascript
jquery中取消和绑定hover事件的实现代码
Jun 02 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
Mar 06 Javascript
vue组件如何被其他项目引用
Apr 13 Javascript
Vue 组件注册实例详解
Feb 23 Javascript
vue 中 命名视图的用法实例详解
Aug 14 Javascript
vue addRoutes路由动态加载操作
Aug 04 Javascript
在vue项目中利用popstate处理页面返回的操作介绍
Aug 06 Javascript
js+for循环实现字符串自动转义的代码(把后面的字符替换前面的字符)
Dec 24 Javascript
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 地址栏信息的获取代码
2009/01/07 PHP
php中关于socket的系列函数总结
2015/05/18 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
JQuery异步加载PartialView的方法
2016/06/07 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
vue.extend实现alert模态框弹窗组件
2018/04/28 Javascript
原生JS实现$.param() 函数的方法
2018/08/10 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
2019/01/07 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
Python同时向控制台和文件输出日志logging的方法
2015/05/26 Python
python中使用序列的方法
2015/08/03 Python
Python之re操作方法(详解)
2017/06/14 Python
Python 自动刷博客浏览量实例代码
2017/06/14 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
基于Django filter中用contains和icontains的区别(详解)
2017/12/12 Python
python脚本实现验证码识别
2018/06/07 Python
Python socket实现的简单通信功能示例
2018/08/21 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
python实现简单名片管理系统
2018/11/30 Python
python实现最大子序和(分治+动态规划)
2019/07/05 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
python中的列表和元组区别分析
2020/12/30 Python
Three Graces London官网:英国奢侈品牌
2021/03/18 全球购物
工作的心得体会
2013/12/31 职场文书
交通安全寄语大全
2014/04/08 职场文书
小学班主任评语大全
2014/04/23 职场文书
党员个人对照检查材料
2014/10/01 职场文书
2014年财务科工作总结
2014/11/11 职场文书
大学生个人学年总结
2015/02/15 职场文书
教师节老师寄语
2015/05/28 职场文书
走进科学观后感
2015/06/18 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书
Node.js实现断点续传
2021/06/23 Javascript