JavaScript switch 語句

 JavaScript 語句和變量聲明

switch語句是JavaScript的條件語句之一,用于在不同條件下執(zhí)行不同的動作。

switch語句對表達(dá)式求值,將表達(dá)式的值與case子句匹配,并執(zhí)行與該case關(guān)聯(lián)的語句,以及在匹配case之后的語句。

與每個case標(biāo)簽關(guān)聯(lián)的break語句可確保一旦執(zhí)行了匹配的語句,程序便會退出switch,并在switch之后的語句處繼續(xù)執(zhí)行。如果省略break,程序?qū)⒃趕witch語句的下一個語句處繼續(xù)執(zhí)行。

default語句指定如果沒有匹配的情況下,默認(rèn)運(yùn)行的一些代碼。switch中只能有一個默認(rèn)語句。盡管這是可選的,但建議您使用它,因?yàn)樗梢蕴幚硪饬现獾那闆r。

使用switch選擇要執(zhí)行的許多代碼塊之一。這是長嵌套if ... else語句的完美解決方案。

語法:

switch (expression) {
  case value1:   //語句執(zhí)行時
   //表達(dá)式匹配的結(jié)果 value1
   break;
  case value2:   //語句執(zhí)行時
   //表達(dá)式匹配的結(jié)果 value2
   break;
  ...
  case valueN:   //語句執(zhí)行時
   //表達(dá)式匹配的結(jié)果 valueN
   break;
  default:   //沒有以上情況時執(zhí)行的語句
   //這些值與表達(dá)式的值匹配
   }
var city = document.querySelector("input").value;
var text;

switch (city) {
   case "Jaipur":
   text = "Jaipur is known as the Pink City";
   break;
   case "Bengaluru":
   text = "Bengaluru is known as the IT city";
   break;
   case "Kerala": 
   text = "Kerala God's Own Country";
   break;
   default:
   text = "I have never heard of that city...";
}
測試看看?/?

瀏覽器兼容性

所有瀏覽器都完全支持switch語句:

Statement
switch

參數(shù)值

參數(shù)描述
expression一個表達(dá)式,其結(jié)果與每個case子句匹配。
case valueN用于與表達(dá)式匹配的case子句。如果表達(dá)式匹配指定的valueN,則執(zhí)行case子句中的語句,直到switch語句的結(jié)尾或break。
default(可選)默認(rèn)子句;如果提供,則如果expression的值與任何case子句都不匹配,則執(zhí)行此子句。

技術(shù)細(xì)節(jié)

JavaScript版本:ECMAScript 1

更多示例

使用工作日編號來計算工作日名稱(星期日= 0,星期一= 1,依此類推...):

var day;
switch (new Date().getDay()) {
case 0: day = "Sunday";
break;
case 1: day = "Monday";
break;
case 2: day = "Tuesday";
break;
case 3: day = "Wednesday";
break;
case 4: day = "Thursday";
break;
case 5: day = "Friday";
break;
case 6: day = "Saturday";
break;
default: day = "Undefined Day";
}
測試看看?/?

如果您忘記break,那么腳本將從符合條件的情況開始運(yùn)行,然后在滿足條件的情況下運(yùn)行情況:

var num = Number(document.querySelector("input").value);
var text;

switch (num) {
   case 1: text = "您輸入的號碼是 1";
   case 2: text = "您輸入的號碼是 2";
   case 3: text = "您輸入的號碼是 3";
   case 4: text = "您輸入的號碼是 4";
   case 5: text = "您輸入的號碼是 5";
   default: text = "Default statement executed";
}
測試看看?/?

有時,您會希望不同的情況使用相同的代碼,或者使用通用代碼。

這是單操作switch語句的示例,其中四個不同的值執(zhí)行的操作完全相同:

var num = Number(document.querySelector("input").value);
var text;

switch (num) {
   case 1:
   case 2:
   case 3:
   case 4:
  text = "您輸入的號碼是介于 1 - 4";
  break;
   case 5:
   case 6:
   case 7:
   case 8:
  text = "您輸入的號碼是介于 5 - 8";
  break; 
   default: text = "默認(rèn)語句被執(zhí)行";
}
測試看看?/?

相關(guān)參考

JavaScript教程:JavaScript If ... Else語句

JavaScript教程:JavaScript switch

JavaScript參考:JavaScript break語句

 JavaScript 語句和變量聲明

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清