关于javascript:Switch语句中单个案例中的多个条件

Multple Criteria in a Single Case inside a Switch Statement

本问题已经有最佳答案,请猛点这里访问。

嗨,我搜索了所有旧的答案,比如在2008年,我正在为新的浏览器创建Firefox插件,这样我就可以使用ECMA 5+。

我试图做一个开关,有一个块满足多个条件,如如果大于等于0&;&;<=3,如下所示:

1
2
3
4
5
6
7
switch (blah) {
     case 0, 1, 2, 3: //<<<<<<<< this here please
          //do this;
          break;
     default:
          ///do this
}

这只是一个基本的例子。

我希望多个值触发同一个案例。我该怎么做?


这可能是你要找的。如果是,请更清楚地定义您的问题。

1
2
3
4
5
6
7
8
9
10
switch (x) {
   case 0:
   case 1:
   case 2:
   case 3:
   // do this
   break;
   default:
   // do this
}

另请参见交换机中的多个案例:


有一种hacky开关样式允许您指定范围:

1
2
3
4
5
6
7
switch (true) {
    case blah >= 0 && blah <= 3:
        //do this
        break
    default:
        //do that
}

在这种情况下,它有时很有用。

也许它会做你想做的。