Switch語句的技巧
概述
switch語句對一個(gè)表達(dá)式求值,將結(jié)果與 case 子語句比較,如果匹配,則從 case 處的語句向下執(zhí)行。
語法
break;語句是可選擇的,如果遇到break;則會(huì)跳出整個(gè)switch語句。如果沒有任何case匹配,則進(jìn)入到default:的分支。default:分支也是可選的。
switch (expression) { case value1: // 當(dāng) expression 的結(jié)果與 value1 匹配時(shí),從此處開始執(zhí)行 statements1; [break;] case value2: // 當(dāng) expression 的結(jié)果與 value2 匹配時(shí),從此處開始執(zhí)行 statements2; [break;] ... case valueN: // 當(dāng) expression 的結(jié)果與 valueN 匹配時(shí),從此處開始執(zhí)行 statementsN; [break;] default: // 如果 expression 與上面的 value 值都不匹配時(shí),執(zhí)行此處的語句 statements_def; [break;] }
case中使用條件判斷
看看下面的代碼,當(dāng)foo為0,1,2,3的時(shí)候顯示alert。
var foo = 1; switch (foo) { case 0: case 1: case 2: case 3: alert('yes'); break; default: alert('not'); }
有沒有更好的寫法呢?下面這個(gè)顯然更簡潔清晰啊。
var foo = 1; switch (true) { // 非變量 TRUE 替代 foo case foo >= 0 && foo <= 3: alert('yes'); break; default: alert('not'); }
表示等級
精心設(shè)計(jì)的switch把_最少最稀有的條件_在上面,普通的條件放在相對下面的位置
function rankProgrammer(rank){ switch(rank){ case "高級": this.secretary = true; case "中級": this.laptop = true; this.bonus = true; case "初級": this.salary = true; this.vacation = true; } } var xiaohu=new rankProgrammer("高級"); console.log(xiaohu);
以上內(nèi)容給大家介紹了switch語句的技巧,希望對大家以上幫助。
相關(guān)文章
Swift如何調(diào)用Objective-C的可變參數(shù)函數(shù)詳解
這篇文章主要給大家介紹了關(guān)于Swift如何調(diào)用Objective-C的可變參數(shù)函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用swift具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03swift4 使用DrawerController實(shí)現(xiàn)側(cè)滑菜單功能的示例代碼
這篇文章主要介紹了swift4 使用DrawerController實(shí)現(xiàn)側(cè)滑功能的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06swift3.0 創(chuàng)建sqlite數(shù)據(jù)庫步驟方法
本篇文章主要介紹了swift3.0 創(chuàng)建sqlite數(shù)據(jù)庫步驟方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06Swift 3.0將UILabel數(shù)字顏色設(shè)置為紅色的方法
這篇文章主要介紹了關(guān)于在Swift中將UILabel數(shù)字顏色設(shè)置為紅色的方法,文中給出了詳細(xì)的示例代碼,相信對大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03Swift?Sequence?Collection使用示例學(xué)習(xí)
這篇文章主要為大家介紹了Swift?Sequence?Collection使用示例學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07Swift使用CoreData時(shí)遇到的一些填坑記錄
這篇文章主要給大家記錄了在Swift使用CoreData時(shí)遇到的一些坑,以及介紹了CoreData在Swift 3.0中的一點(diǎn)改變,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-12-12swift中AnyObject和Any的介紹與區(qū)別詳解
雖然使用swift開發(fā)了一段時(shí)間,但是感覺對一些基礎(chǔ)的東西了解不是比較透徹,在查詢了許多資料以后還是打算自己動(dòng)手記錄一下,下面這篇文章主要給大家介紹了關(guān)于swift中AnyObject和Any的介紹與區(qū)別的相關(guān)資料,需要的朋友可以參考下。2017-12-12