oxc/bad-object-literal-comparison 正确性
它做了什么
检查对象字面量和数组字面量之间的比较。
为什么这是不好的?
将一个变量与对象字面量或数组字面量进行比较,结果总是 false,因为对象字面量和数组字面量永远不相等。
如果你想检查一个对象或数组是否为空,请使用 Object.entries() 或 Object.keys() 及其长度。
示例
此规则的 错误 代码示例:
javascript
if (x === {}) {
}
if (arr !== []) {
}此规则的 正确 代码示例:
javascript
if (typeof x === "object" && Object.keys(x).length === 0) {
}
if (Array.isArray(x) && x.length === 0) {
}如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"oxc/bad-object-literal-comparison": "error"
}
}bash
oxlint --deny oxc/bad-object-literal-comparison