版本

no-self-compare

禁止两侧完全相同的比较

将变量与其自身进行比较通常是错误,要么是拼写错误,要么是重构错误。这对读者来说令人困惑,并且可能引入运行时错误。

您唯一需要将变量与其自身进行比较的情况是当您正在测试 NaN 时。但是,对于这种情况,使用 typeof x === 'number' && isNaN(x)Number.isNaN ES2015 函数 比让代码的读者确定自比较的意图要合适得多。

规则详细信息

此错误被提出是为了突出可能令人困惑且可能毫无意义的代码片段。几乎没有您需要将某物与其自身进行比较的情况。

此规则的不正确代码示例

在代码游乐场中打开
/*eslint no-self-compare: "error"*/

var x = 10;
if (x === x) {
    x = 20;
}

版本

此规则是在 ESLint v0.0.9 中引入的。

资源

更改语言