no-new
禁止在赋值或比较之外使用 new
运算符
通常,使用 new
和构造函数的目的是创建一个特定类型的对象,并将该对象存储在一个变量中,例如
const person = new Person();
不太常见的是使用 new
而不存储结果,例如
new Person();
在这种情况下,创建的对象被丢弃,因为它的引用没有存储在任何地方,并且在许多情况下,这意味着构造函数应该被替换为不需要使用 new
的函数。
规则详情
此规则旨在通过禁止使用 new
关键字调用构造函数而不将结果对象赋值给变量来维护一致性和约定。
此规则的 错误 代码示例
在 Playground 中打开
/*eslint no-new: "error"*/
此规则的 正确 代码示例
在 Playground 中打开
/*eslint no-new: "error"*/
const thing = new Thing();
Foo();
版本
此规则在 ESLint v0.0.7 中引入。