no-self-compare
禁止两侧完全相同的比较
将变量与其自身进行比较通常是错误,要么是拼写错误,要么是重构错误。这对读者来说令人困惑,并且可能引入运行时错误。
您唯一需要将变量与其自身进行比较的情况是当您正在测试 NaN
时。但是,对于这种情况,使用 typeof x === 'number' && isNaN(x)
或 Number.isNaN ES2015 函数 比让代码的读者确定自比较的意图要合适得多。
规则详细信息
此错误被提出是为了突出可能令人困惑且可能毫无意义的代码片段。几乎没有您需要将某物与其自身进行比较的情况。
此规则的不正确代码示例
在代码游乐场中打开
/*eslint no-self-compare: "error"*/
var x = 10;
if () {
x = 20;
}
版本
此规则是在 ESLint v0.0.9 中引入的。