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 1.5 &amp; scriptaculous 1.6.1 学习笔记
Sep 07 Javascript
JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)
Jul 04 Javascript
js实现数组去重、判断数组以及对象中的内容是否相同
Nov 29 Javascript
js通过iframe加载外部网页的实现代码
Apr 05 Javascript
jQuery实现的向下图文信息滚动效果
May 03 Javascript
详解JavaScript的策略模式编程
Jun 24 Javascript
jquery实现不包含当前项的选择器实例
Jun 25 Javascript
AngularJs页面筛选标签小功能
Aug 01 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
Jan 05 Javascript
Vue中util的工具函数实例详解
Jul 08 Javascript
vue3+typescript实现图片懒加载插件
Oct 26 Javascript
jQuery-App输入框实现实时搜索
Nov 19 jQuery
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处理文件的小例子(解压缩,删除目录)
2013/02/03 PHP
php实现与erlang的二进制通讯实例解析
2014/07/23 PHP
php新建文件的方法实例
2019/09/26 PHP
爱恋千雪-US-AscII加密解密工具(网页加密)下载
2007/06/06 Javascript
Google排名中的10个最著名的 JavaScript库
2010/04/27 Javascript
Jquery实现自定义窗口随意的拖拽
2014/03/12 Javascript
详谈Angular路由与Nodejs路由的区别
2017/03/05 NodeJs
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
vue-cli + sass 的正确打开方式图文详解
2017/10/27 Javascript
详解Vue如何支持JSX语法
2017/11/10 Javascript
layui radio单选限制下一个radio单选的实例
2019/09/03 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
约瑟夫问题的Python和C++求解方法
2015/08/20 Python
详解Python的Twisted框架中reactor事件管理器的用法
2016/05/25 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
python检索特定内容的文本文件实例
2018/06/05 Python
在python 中实现运行多条shell命令
2019/01/07 Python
Python 获取命令行参数内容及参数个数的实例
2019/12/20 Python
Python改变对象的字符串显示的方法
2020/08/01 Python
css3实现3D色子翻转特效
2014/12/23 HTML / CSS
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
加拿大领先的牛仔零售商:Bluenotes
2018/01/22 全球购物
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
维多利亚的秘密官方网站:Victoria’s Secret
2018/10/24 全球购物
C语言编程练习
2012/04/02 面试题
工程专业毕业生自荐信范文
2013/12/25 职场文书
完美主义个人的自我评价
2014/02/17 职场文书
工作鉴定评语
2014/05/04 职场文书
小学学校门卫岗位职责
2014/08/03 职场文书
档案接收函格式
2015/01/30 职场文书
酒店宣传语大全
2015/07/13 职场文书
任命书格式模板
2015/09/22 职场文书
品德与社会教学反思
2016/02/24 职场文书
面试提问mysql一张表到底能存多少数据
2022/03/13 MySQL