Javascript switch语句:有两种方法可以运行相同的代码吗?

时间:2011-09-26 18:28:53

标签: javascript switch-statement

有没有办法将两个不同的案例值分配给同一个代码块而无需复制和粘贴?例如,低于68和40应执行相同的代码,而30则不相关。

case 68:
   //Do something
break;

case 40:
   //Do the same thing
break;

case 30:
   //Do something different
break;

认为这样的事情应该有效是不正确的(即使它显然没有)?

case 68 || 40:
   //Do something
break;

case 30:
   //Do something else
break;

5 个答案:

答案 0 :(得分:147)

将它们放在彼此之后不间断

switch (myVar) {
  case 68:
  case 40:
    // Do stuff
  break;

  case 30:
    // Do stuff
  break;
}

答案 1 :(得分:18)

是的,您只需将相关的case语句放在彼此旁边,如下所示:

case 40:  // Fallthrough
case 68:
   // Do something
   break;

case 30:
   // Do something different
   break;

Fallthrough评论有两个原因:

  • 它向人类读者保证你故意这样做
  • 它使类似Lint的工具发出警告,警告可能发生意外坠落。

答案 2 :(得分:4)

case 68:
case 40:
  // stuff
  break;

答案 3 :(得分:0)

Switch cases can be clubbed as shown in the dig.

此外,它不仅限于两种情况,您可以将其扩展到任何一种情况。案件。

答案 4 :(得分:-4)

您应该使用:

switch condition {
  case 1,2,3:
    // do something
  case 4,5:
    // do something
  default:
    // do something
}

案件应以逗号分隔。

相关问题