eslint/no-object-constructor 严格
作用
禁止在没有参数的情况下调用 Object 构造函数
为什么这是个问题?
使用 Object 构造函数来创建一个新空对象通常不推荐,应优先使用对象字面量语法,因为后者更简洁,且避免了全局变量 Object 可能被重新定义的风险。例外情况是当有意使用 Object 构造函数来包装指定的值(该值作为参数传入)时。
示例
以下代码为 错误 的示例:
js
Object();
new Object();以下代码为 正确 的示例:
js
Object("foo");
const obj = { a: 1, b: 2 };
const isObject = (value) => value === Object(value);
const createObject = (Object) => new Object();如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"no-object-constructor": "error"
}
}bash
oxlint --deny no-object-constructor