Baseline Widely available
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.");
// Expected output: "Mangoes and papayas are $2.79 a pound."
break;
default:
console.log(`Sorry, we are out of ${expr}.`);
}
æ§æ
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
ç¯ã®å¼ã¯è©ä¾¡ããã¾ãããããã¯ãè½ä¸ãçºçããå ´åã«ãåæ§ã§ãã
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) ã¨å¼ã°ãã¾ãã
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
æããæãåºã广ãããã¾ããä¾ãã°ãswitch
æã颿°ã®ä¸ã«å«ã¾ãã¦ããå ´åãreturn
æã¯é¢æ°æ¬ä½ã®å®è¡ãçµäºãããããã£ã¦ switch
æã®å®è¡ãçµäºããã¾ãããã switch
æãã«ã¼ãã«å«ã¾ãã¦ããå ´åãcontinue
æã¯ switch
æã䏿ããã«ã¼ãã®æ¬¡ã®å復å¦çã«ã¸ã£ã³ãããã¾ãã
case
㨠default
å¥ã¯ã©ãã«ã®ãããªãã®ã§ãããããã¯ãå¶å¾¡ããã¼ãã¸ã£ã³ãããå¯è½æ§ã®ããå ´æããããã¨ã示ãã¾ãããããããããã¯åå¥ã®ã¹ã³ã¼ããã®ãã®ã使ããããã§ã¯ããã¾ããï¼èªåçã«è±åºãããã¨ãããã¾ãããä¸ã§ç¤ºããã¨ããã§ãï¼ãä¾ãã°æ¬¡ã®ããã«ãªãã¾ãã
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
宣è¨ã使ç¨ããå¿
è¦ãããå ´åã«ã¯ãããããããã¯ã§å²ã¿ã¾ãã
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
ãã³ã³ã½ã¼ã«ã«åºåããããã«ãªãã¾ãã
次ã®ä¾ã§ã¯ã expr
ã Bananas
ã¨è©ä¾¡ãããå ´åãããã°ã©ã 㯠case 'Bananas'
ã§å¤ã«ä¸è´ããé¢é£ä»ããããæãå®è¡ãã¾ãã break
ã¨ééããã¨ããããã°ã©ã 㯠switch
ããæãåºãã switch
ã«ç¶ãæãå®è¡ãã¾ãã break
ãçç¥ãããå ´åã¯ã case 'Cherries'
ã«å¯¾ããæãå®è¡ããã¾ãã
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
ç¯ããå®è¡ãå§ã¾ãããã以éã®ãã¹ã¦ã®æãå®è¡ããã¾ãã
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 ã¤ã®ç°ãªãå¤ã§ã¾ã£ããåãæä½ãè¡ãã¾ãã
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
æã®ä¸ã«æååã®å®ç¾©ãæ··ãããã¨ãã§ãã¾ãã
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
ã¨ããç
§åãä½åº¦ããããã¨ã«ãªããã¨ãå¤ãã®ã§ã¯ãªãã§ããããã
if ("fetch" in globalThis) {
// fetch ã§ãªã½ã¼ã¹ãèªã¿åã
} else if ("XMLHttpRequest" in globalThis) {
// XMLHttpRequest ã§ãªã½ã¼ã¹ãèªã¿åã
} else {
// ä½ããã®ã«ã¹ã¿ã AJAX ãã¸ãã¯ã§ãªã½ã¼ã¹ãèªã¿åã
}
ãã®ãã¿ã¼ã³ã¯ãä¸é£ã® ===
æ¯è¼ãè¡ããã®ã§ã¯ããã¾ãããã switch
æ§é ã«å¤æãããã¨ãã§ãã¾ãã
switch (true) {
case "fetch" in globalThis:
// fetch ã§ãªã½ã¼ã¹ãèªã¿åã
break;
case "XMLHttpRequest" in globalThis:
// XMLHttpRequest ã§ãªã½ã¼ã¹ãèªã¿åã
break;
default:
// ä½ããã®ã«ã¹ã¿ã AJAX ãã¸ãã¯ã§ãªã½ã¼ã¹ãèªã¿åã
break;
}
if...else
ã®ä»£ããã« switch (true)
ãã¿ã¼ã³ã使ç¨ããã¨ãè½ä¸åä½ã使ç¨ããå ´åã«ç¹ã«æçã§ãã
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;
}
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4