Skip to content
← Back to rules

eslint/max-params 风格

它的作用

强制函数定义中的参数数量不得超过指定最大值(默认为三个)。

为什么这是个问题?

包含大量参数的函数在阅读和编写时可能难以处理,因为需要记住每个参数的含义、类型以及它们的排列顺序。因此,许多开发者遵循一种惯例,即限制函数可接受的参数数量。

示例

以下为 错误 的代码示例:

javascript
function foo(bar, baz, qux, qxx) {
  doSomething();
}
javascript
let foo = (bar, baz, qux, qxx) => {
  doSomething();
};

以下为 正确 的代码示例:

javascript
function foo(bar, baz, qux) {
  doSomething();
}
javascript
let foo = (bar, baz, qux) => {
  doSomething();
};

配置

此规则接受一个配置对象,包含以下属性:

countThis

此选项控制是否将 this 参数计入总数。

  • "always":始终计入 this
  • "never":从不计入 this
  • "except-void":仅当 this 不是 void 类型时才计入

countVoidThis

type: boolean

default: false

已弃用的别名,对应 countThis

例如 { "countVoidThis": true } 表示将 this 参数类型为 void 的情况也计入参数数量上限。

max

type: integer

default: 3

函数定义中允许的最大参数数量。

如何使用

要通过配置文件或 CLI 启用 此规则,可以使用:

json
{
  "rules": {
    "max-params": "error"
  }
}
bash
oxlint --deny max-params

参考资料