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);  }}
目录
相关文章
|
3月前
|
JSON JavaScript 前端开发
js有哪些内置对象?
js有哪些内置对象?
|
2月前
|
JavaScript
JS动态参数arguments与剩余参数
JS动态参数arguments与剩余参数
|
8月前
|
Web App开发 JavaScript 前端开发
JavaScript的对象介绍和常用内置对象介绍
JavaScript的对象介绍和常用内置对象介绍
|
5月前
|
机器学习/深度学习 存储 前端开发
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!3
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!3
|
5月前
|
存储 JavaScript 前端开发
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!2
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!2
|
5月前
|
人工智能 前端开发 JavaScript
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!1
【前端|Javascript第5篇】全网最详细的JS的内置对象文章!1
|
10月前
|
存储 JavaScript
JS arguments对象
众所周知,js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面
|
5月前
|
JavaScript 前端开发 索引
原生JavaScript之函数特殊对象arguments
原生JavaScript之函数特殊对象arguments
36 0
|
6月前
|
JavaScript 前端开发 数据处理
JavaScript常用内置对象和方法
JavaScript是一种功能强大的编程语言,它提供了许多内置对象和方法,用于处理不同的数据类型和执行各种操作。本文将介绍JavaScript的常用内置对象和方法,包括Array、String、Date、Math等,并详细介绍它们的属性和方法。
|
7月前
|
存储 JavaScript 前端开发
JavaScript(内置对象)
JavaScript(内置对象)