Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JavaScript, Typescript switch statement: way to run same code for two cases?

Is there a way to assign two different case values to the same block of code without copy and pasting? For example, below 68 and 40 should execute the same code, while 30 is not related.

case 68:
   //Do something
break;

case 40:
   //Do the same thing
break;

case 30:
   //Do something different
break;

Is it incorrect to think something like this should work (even though it obviously doesn't)?

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

case 30:
   //Do something else
break;
like image 291
nipponese Avatar asked Sep 26 '11 18:09

nipponese


People also ask

Can you have multiple cases in a switch statement?

As per the above syntax, switch statement contains an expression or literal value. An expression will return a value when evaluated. The switch can includes multiple cases where each case represents a particular value.

Can a switch statement have two conditions JavaScript?

You can use multiple conditions in the switch case same as using in JavaScript if statement. You can do that but the switch statement will switch on the result of the expression you provide. Given you have a logical and ( && ) in your expression there are two possible outcomes defined on how && works.

What is Fallthrough case in switch TypeScript?

Case clause fall-throughsTypeScript can reports errors for fall-through cases in switch statement where the case clause is non-empty. This check is turned off by default, and can be enabled using noFallthroughCasesInSwitch .


3 Answers

Just put them right after each other without a break

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

  case 30:
    // Do stuff
  break;
}
like image 65
klaustopher Avatar answered Oct 11 '22 12:10

klaustopher


Yes, you just put the related case statements next to each other, like this:

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

case 30:
   // Do something different
   break;

The Fallthrough comment is there for two reasons:

  • It reassures human readers that you're doing this deliberately
  • It silences warnings from Lint-like tools that issue warnings about possible accidental fallthrough.
like image 22
RichieHindle Avatar answered Oct 11 '22 13:10

RichieHindle


case 68:
case 40:
  // stuff
  break;
like image 4
BNL Avatar answered Oct 11 '22 13:10

BNL