跳到内容

eslint/no-constant-condition 正确性

此规则默认启用。

规则的作用

禁止在条件中使用常量表达式

这样做的原因

将常量表达式(例如文本)作为测试条件,可能是错别字或特定行为的开发触发器。

本规则禁止在下列语句的测试条件中使用常量表达式

  • ifforwhiledo...while 语句
  • ?: 三元表达式

示例

此规则判定为 不正确 的代码示例

js
if (false) {
  doSomethingUnfinished();
}

if (new Boolean(x)) {
  doSomethingAlways();
}
if ((x ||= true)) {
  doSomethingAlways();
}

do {
  doSomethingForever();
} while ((x = -1));

此规则判定为 正确 的代码示例

js
if (x === 0) {
  doSomething();
}

while (typeof x === "undefined") {
  doSomething();
}

参考资料

在 MIT 许可下发布。