[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/switch [Back]  [Original]

switch - JavaScript | MDN

MDN Web Docs

View in English Always switch to English

switch

Baseline

20157

switch case case break case switch default case

const expr = "Papayas";
switch (expr) {
  case "Oranges":
    console.log("Oranges are $0.59 a pound.");
    break;
  case "Mangoes":
  case "Papayas":
    console.log("Mangoes and papayas are $2.79 a pound.");
    // : "Mangoes and papayas are $2.79 a pound."
    break;
  default:
    console.log(`Sorry, we are out of ${expr}.`);
}

js
switch (expression) {
  case caseExpression1:
    
  case caseExpression2:
    
  // 
  case caseExpressionN:
    
  default:
    
}
expression

case

caseExpressionN

expression case expression caseExpressionN case switch break

default

default expression case switch default 1

switch case

case case

js
switch (undefined) {
  case console.log(1):
  case console.log(2):
}
// 1 

case default default switch default switch default default SyntaxError

switch break 2 case switch

break case default (fall-through)

js
const foo = 0;
switch (foo) {
  case -1:
    console.log("negative 1");
    break;
  case 0: // foo 
    console.log(0);
  // break 
  case 1: // 'case 0:'  break 
    console.log(1);
    break; // break  'case 2:' 
  case 2:
    console.log(2);
    break;
  default:
    console.log("default");
}
// 0  1 

switch switchreturn switch switch continue switch

case default

js
const action = "say_hello";
switch (action) {
  case "say_hello":
    const message = "hello";
    console.log(message);
    break;
  case "say_hi":
    const message = "hi";
    console.log(message);
    break;
  default:
    console.log("Empty action received.");
}

"Uncaught SyntaxError: Identifier 'message' has already been declared" const message = 'hello'; 2 const message = 'hi'; case const switch

case let const

js
const action = "say_hello";
switch (action) {
  case "say_hello": {
    const message = "hello";
    console.log(message);
    break;
  }
  case "say_hi": {
    const message = "hi";
    console.log(message);
    break;
  }
  default: {
    console.log("Empty action received.");
  }
}

hello

switch

expr Bananas case 'Bananas' break switch switch break case 'Cherries'

js
switch (expr) {
  case "Oranges":
    console.log("Oranges are $0.59 a pound.");
    break;
  case "Apples":
    console.log("Apples are $0.32 a pound.");
    break;
  case "Bananas":
    console.log("Bananas are $0.48 a pound.");
    break;
  case "Cherries":
    console.log("Cherries are $3.00 a pound.");
    break;
  case "Mangoes":
  case "Papayas":
    console.log("Mangoes and papayas are $2.79 a pound.");
    break;
  default:
    console.log(`Sorry, we are out of ${expr}.`);
}

console.log("Is there anything else you'd like?");

case default

default

js
const foo = 5;
switch (foo) {
  case 2:
    console.log(2);
    break; //  break  'default:' 
  default:
    console.log("default");
  // 
  case 1:
    console.log("1");
}

case default

case break case

case 4

js
const Animal = "Giraffe";
switch (Animal) {
  case "Cow":
  case "Giraffe":
  case "Dog":
  case "Pig":
    console.log("This animal is not extinct.");
    break;
  case "Dinosaur":
  default:
    console.log("This animal is extinct.");
}

case case JavaScript case

js
const foo = 1;
let output = "Output: ";
switch (foo) {
  case 0:
    output += "So ";
  case 1:
    output += "What ";
    output += "Is ";
  case 2:
    output += "Your ";
  case 3:
    output += "Name";
  case 4:
    output += "?";
    console.log(output);
    break;
  case 5:
    output += "!";
    console.log(output);
    break;
  default:
    console.log("Please pick a number from 0 to 5!");
}

foo NaN 1, 2, 3, 4, 5, 0 Please pick a number from 0 to 5!
0 Output: So What Is Your Name?
1 Output: What Is Your Name?
2 Output: Your Name?
3 Output: Name?
4 Output: ?
5 Output: !

if...else

if...else

js
if ("fetch" in globalThis) {
  // fetch 
} else if ("XMLHttpRequest" in globalThis) {
  // XMLHttpRequest 
} else {
  //  AJAX 
}

=== switch

js
switch (true) {
  case "fetch" in globalThis:
    // fetch 
    break;
  case "XMLHttpRequest" in globalThis:
    // XMLHttpRequest 
    break;
  default:
    //  AJAX 
    break;
}

if...else switch (true)

js
switch (true) {
  case isSquare(shape):
    console.log("This shape is a square.");
  // square  rectangle 
  case isRectangle(shape):
    console.log("This shape is a rectangle.");
  case isQuadrilateral(shape):
    console.log("This shape is a quadrilateral.");
    break;
  case isCircle(shape):
    console.log("This shape is a circle.");
    break;
}

ECMAScript 2027 LanguageSpecification
# sec-switch-statement


Web Proxy Viewer  |  New URL  |  Original Page