JavaScript – 基本語法
阿新 • • 發佈:2022-05-07
參考
Switch
switch 經常用來取代 else if, 因為可讀性比價高, 而且通常效能也比較好.
standard 長這樣
const orderStatus = 'Pending'; switch (orderStatus) { case 'Pending': console.log('Pending'); break; case 'Shipping': console.log('Shipping'); break; case 'Completed': console.log('Completed');break; default: console.log('else'); break; }
它的執行邏輯是這樣的:
1. swtich 的值 匹配 case 的值
2. 對不上就去試下一個 case, 對上了就執行那個 case 的程式碼
3. 如果有 break 就中斷結束, 如果沒有 break 就繼續執行下一個 case 的程式碼 (這時就不管下一個 case 是否匹配了哦, 就這樣一個一個 case 執行, 直到 break 的出現)
最關鍵就是第 3 個. 通常每一個 case 都會有 break, 這才符合 else if 的邏輯 (這裡可以看出 swtich 其實不是設計來取代 else if 的, 它有自己的用處, 只是我們經常只拿來替代 else if)
另外, 如果程式碼多的話可以用花括弧包起來, break 在裡面或外面都是可以的
上面是 string 的匹配. 如果遇到複雜的情況還可以這樣寫: