JavaScript switch 語句
- 上一頁 return
- 下一頁 throw
- 返回上一層 JavaScript 語句參考手冊
定義和用法
switch 語句根據不同的情況執行代碼塊。
switch 語句是 JavaScript 的“條件”語句的一部分,用于根據不同的條件執行不同的操作。使用 switch 選擇要執行的許多代碼塊之一。這是長的嵌套 if/else 語句的完美解決方案。
switch 語句計算表達式。然后將表達式的值與結構中每個 case 的值進行比較。如果匹配,則執行關聯的代碼塊。
switch 語句通常與 break 或 default 關鍵字(或兩者)一起使用。這些都是可選的:
break 關鍵字脫離 switch 塊。這將停止在塊內執行更多代碼和/或案例測試。如果省略 break,則執行 switch 語句中的下一個代碼塊。
如果沒有 case 匹配,default 關鍵字指定要運行的一些代碼。一個 switch 中只能有一個 default 關鍵字。盡管其是可選的,但建議您使用它,因為它可以處理意外情況。
實例
根據用戶輸入執行代碼塊:
var text; var fruits = document.getElementById("myInput").value; switch(fruits) { case "Banana": text = "Banana is good!"; break; case "Orange": text = "I am not a fan of orange."; break; case "Apple": text = "How you like them apples?"; break; default: text = "I have never heard of that fruit..."; }
頁面下方有更多 TIY 實例。
語法
switch(expression) { case n: code block break; case n: code block break; default: default code block }
參數值
參數 | 描述 |
---|---|
expression | 必需。指定要計算的表達式。表達式會被計算一次。表達式的值與結構中每個 case 標簽的值進行比較。如果匹配,則執行相關的代碼塊。 |
技術細節
JavaScript 版本: | ECMAScript 1 |
---|
更多實例
實例
使用今天的 weekday 編號計算 weekday 名稱 (Sunday=0, Monday=1, Tuesday=2, ...):
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 = "Unknown Day"; }
實例
如果今天既不是星期六也不是星期日,寫一條默認消息:
var text; switch (new Date().getDay()) { case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; break; default: text = "Looking forward to the Weekend"; }
實例
有時您會希望不同的情況使用相同的代碼,或者使用相同的默認值。
請注意,在本例中,case 共享相同的代碼塊,并且 default case 不必是 switch 塊中的最后一個 case(但是,如果 default 不是 switch 塊中的最后一個 case,請記住用 break 結束它)。
var text; switch (new Date().getDay()) { case 1: case 2: case 3: default: text = "Looking forward to the Weekend"; break; case 4: case 5: text = "Soon it is Weekend"; break; case 0: case 6: text = "It is Weekend"; }
實例
根據來自提示框的用戶輸入,使用 switch 語句執行代碼塊:
var text; var favDrink = prompt("What's your favorite cocktail drink?"); switch(favDrink) { case "Martini": text = "Excellent choice! Martini is good for your soul."; break; case "Daiquiri": text = "Daiquiri is my favorite too!"; break; case "Cosmopolitan": text = "Really? Are you sure the Cosmopolitan is your favorite?"; break; default: text = "I have never heard of that one.."; }
瀏覽器支持
語句 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
switch | 支持 | 支持 | 支持 | 支持 | 支持 |
相關頁面
JavaScript 教程:JavaScript If...Else 語句
JavaScript 教程:JavaScript Switch 語句
JavaScript 參考手冊:JavaScript if/else 語句
JavaScript 參考手冊:JavaScript break 語句
- 上一頁 return
- 下一頁 throw
- 返回上一層 JavaScript 語句參考手冊