arguments.length
**arguments.length
** 数据属性包含传递给函数的参数数量。
值
非负整数。
arguments.length 的属性属性 |
|
---|---|
可写 | 是 |
可枚举 | 否 |
可配置 | 是 |
描述
arguments.length
属性提供实际传递给函数的参数数量。这可能多于或少于定义的参数数量(请参阅Function.prototype.length
)。例如,对于以下函数
js
function func1(a, b, c) {
console.log(arguments.length);
}
func1.length
返回 3
,因为 func1
声明了三个形式参数。但是,func1(1, 2, 3, 4, 5)
记录 5
,因为 func1
被调用了五个参数。同样,func1(1)
记录 1
,因为 func1
被调用了一个参数。
示例
使用 arguments.length
在此示例中,我们定义了一个可以将两个或多个数字加在一起的函数。
js
function adder(base /*, num1, …, numN */) {
base = Number(base);
for (let i = 1; i < arguments.length; i++) {
base += Number(arguments[i]);
}
return base;
}
规范
规范 |
---|
ECMAScript 语言规范 # sec-arguments-exotic-objects |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
另请参阅
- 函数 指南
- 函数
参数
Function
:length