js中arguments是什么东西

it2026-06-19  9

在调用函数时,浏览器每次都会传递进两个隐含的参数 1.函数的上下文对象this 2.封装实参的对象arguments

其中arguments是一个类数组对象

function(){ console.log(arguments instanceof Array); //false console.log(Array.isArray(arguments)); //false }

可以看出,类数组对象他不是数组,arguments是类数组对象 类数组对象可以通过索引来操作数据,也可以获取数组长度,但他不是数组

在调用函数时,我们所传递的实参都会在arguments中保存

function fun(){ console.log(arguments.length); } fun(); //0 fun('hello'); //1 fun('hello',true); //2

即使不定义形参,我们也可以通过arguments来使用实参,只不过麻烦。 arguments中还有一个属性callee 这个属性对应一个对象,就是当前正在指向的函数的对象

最新回复(0)