javascript内置对象之arguments

简介: javascript内置对象之arguments

背景:

由于最近需要前端的技术,无意间用到了arguments对象,就在学习了一番

学习之后:

1、arguments是内置对象之一,说白了其实就是函数的一个内置属性,表示的是参数

例如:

function getUrlArgs(a,b,c){
       alert(arguments.length); // 此处就是表示的getUrlArgs的参数的个数 你会感觉他弹出的是几呢?}

2、我认为很多人会跟我一样,认为弹出3(是滴,我之前也是这么认为的),恭喜你!!你错了
这里面弹出的是0,为什么??
因为arguments对象的长度是由实参决定的而不是形参决定的!!!
JavaScript中形参在严格意义上来讲他只是为了方便我们在函数中操作变量提供方便(说白了就是为我们定义了几个变量),
实际上实参已经存储在arguments对象中了。所以他会弹出0
3、arguments中还提供了一个非常有用的属性:callee
arguments.callee 返回的是arguments所在的当前函数的引用,一般递归操作的时候会用他来代替函数名
例子:

calleeDemo(1,2); // 实参和形参相等calleeDemo(1); // 实参和形参不等function calleeDemo(a, b) {  alert(arguments.callee.toString()); // 弹出什么东东呢??自己验证吧,会更好的理解  if (arguments.length == arguments.callee.length) {     window.alert("正确理解形和实参是有必要的!");     return;  } else {     alert("实参长度:" + arguments.length);     alert("形参长度: " + arguments.callee.length);  }}
目录
相关文章
|
9月前
|
JSON JavaScript 前端开发
js有哪些内置对象?
js有哪些内置对象?
|
9月前
|
JavaScript
js中常见的内置对象(js的问题)
js中常见的内置对象(js的问题)
42 0
|
6月前
|
存储 JavaScript 对象存储
JS中的arguments是什么?
JS中的arguments是什么?
72 0
JS中的arguments是什么?
|
6月前
|
JavaScript 开发者
js之内置对象学习
js之内置对象学习
39 0
|
6月前
|
存储 JavaScript 索引
js arguments 的使用与自执行函数
js arguments 的使用与自执行函数
47 0
|
Web App开发 JavaScript 前端开发
JavaScript的对象介绍和常用内置对象介绍
JavaScript的对象介绍和常用内置对象介绍
|
9月前
|
JavaScript 前端开发
深入了解JavaScript的本地对象、内置对象和宿主对象
深入了解JavaScript的本地对象、内置对象和宿主对象
74 2
|
9月前
|
JavaScript
JS动态参数arguments与剩余参数
JS动态参数arguments与剩余参数
|
9月前
|
JSON JavaScript 数据格式
Js内置对象那些可怕的事
Js内置对象那些可怕的事
|
存储 JavaScript
JS arguments对象
众所周知,js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面

热门文章

最新文章