no-object-constructor
Disallow calls to the Object
constructor without an argument
💡 hasSuggestions
Some problems reported by this rule are manually fixable by editor suggestions
通常不建议使用 Object
构造函数创建新的空对象,而应采用对象字面量表示法,因为后者更简洁,且全局变量 Object
可能被重新定义。
例外情况是,当 Object
构造函数用于有意地包装一个作为参数传递的特定值时。
规则细节
此规则禁止在不带参数的情况下调用 Object
构造函数。
使用此规则的错误示例:
Open in Playground
/*eslint no-object-constructor: "error"*/
Object();
new Object();
使用此规则的正确示例:
Open in Playground
/*eslint no-object-constructor: "error"*/
Object("foo");
const obj = { a: 1, b: 2 };
const isObject = value => value === Object(value);
const createObject = Object => new Object();
何时不用
当你希望允许使用 Object
构造函数的时候,你可以安全地禁用此规则。
Related Rules
Version
This rule was introduced in ESLint v8.50.0.