跳至内容

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) {
}

参考

在 MIT 许可证下发布。