arguments 是一个类似数组的对象, 对应于传递给函数的参数。
例如:
function testFunction(args1,args2,args3);
arguments 的值就为 函数中参数的值。
可以通过索引条目来获取对应的值,索引值从0开始例如:
arguments[0] = args1
arguments[1] = args2
arguments[2] = args3
需要注意的是,arguments对象并不是一个 Array。它类似于数组,但除了长度之外没有任何数组属性。
我们可以通过下面的方法将其转换为一个真正的数组:
var args = Array.prototype.slice.call(arguments);
var args = [].slice.call(arguments);
var args = Array.from(arguments);
var args = [...arguments];
注意:
arguments 对象仅在函数内部有效,在函数外部调用 arguments 对象会出错。
该对象在现有浏览器中兼容性都表现良好。