跳至正文

eslint/func-names 样式

🛠️💡 此规则的一些违规行为提供自动修复和建议。

此规则的作用

要求或禁止带有名称的函数表达式。

为什么这样做不好?

如果不为函数指定名称,则它引发的错误或其内部调用的任何函数的堆栈跟踪中会显示“”。这使得查找错误引发位置变得更加困难。如果您为函数表达式提供可选名称,则会在堆栈跟踪中获得函数表达式的名称。

配置

此规则有一个字符串选项

  • “always” 表示函数表达式在所有情况下都需要有名称。
  • “as-needed” 表示只有当运行时不会自动推断函数表达式的名称时才需要名称。
  • “never” 表示函数表达式在任何情况下都不需要有名称。

示例

此规则中 **错误** 代码的示例

javascript
/*oxlint func-names: "error" */

// default is "always" and there is an anonymous function
Foo.prototype.bar = function () {};

/*oxlint func-names: ["error", "always"] */

// there is an anonymous function
Foo.prototype.bar = function () {};

/*oxlint func-names: ["error", "as-needed"] */

// there is an anonymous function
// where the name isn’t assigned automatically per the ECMAScript specs
Foo.prototype.bar = function () {};

/*oxlint func-names: ["error", "never"] */

// there is a named function
Foo.prototype.bar = function bar() {};

此规则中 **正确** 代码的示例

javascript
/*oxlint func-names: "error" */

Foo.prototype.bar = function bar() {};

/*oxlint func-names: ["error", "always"] */

Foo.prototype.bar = function bar() {};

/*oxlint func-names: ["error", "as-needed"] */

var foo = function () {};

/*oxlint func-names: ["error", "never"] */

Foo.prototype.bar = function () {};

参考

根据 MIT 许可证发布。