跳到正文

eslint/no-dupe-else-if 正确性

此规则默认打开。

它做了什么

不允许在 if-else-if 链中出现重复条件

为什么这是不好的?

当需要基于某些条件只执行多个可能分支中的一个分支(或最多一个分支),if-else-if 链通常会被使用。在同一个链中出现两个相同的测试条件基本上总是代码中的错误。除非表达式中存在副作用,否则重复的内容会生成与链中的相同表达式一样的真或假值,这意味着它的分支永远不会执行。

示例

javascript
if (a) {
  foo();
} else if (b) {
  bar();
} else if (b) {
  baz();
}

参考

根据 MIT 许可证发布。