函数:length

lengthFunction 实例的一个数据属性,它指示函数期望的参数数量。

试一试

一个数字。

Function: length 的属性
可写
可枚举
可配置

描述

一个 Function 对象的 length 属性指示函数期望多少个参数,即形式参数的数量。

相反,arguments.length 在函数内部是局部的,并提供实际传递给函数的参数数量。

Function 构造函数本身就是一个 Function 对象。其 length 数据属性的值为 1

由于历史原因,Function.prototype 本身是可调用的。Function.prototypelength 属性的值为 0

示例

使用函数 length

js
console.log(Function.length); // 1

console.log((() => {}).length); // 0
console.log(((a) => {}).length); // 1
console.log(((a, b) => {}).length); // 2 etc.

console.log(((...args) => {}).length);
// 0, rest parameter is not counted

console.log(((a, b = 1, c) => {}).length);
// 1, only parameters before the first one with
// a default value are counted

console.log((({ a, b }, [c, d]) => {}).length);
// 2, destructuring patterns each count as
// a single parameter

规范

规范
ECMAScript 语言规范
# sec-function-instances-length

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅