嗨害嗨大家
我們很常需要查看一系列的條件,當其中一個條件符合的話,就做某些事情。例如,假如我們來西餐廳吃飯,拿到菜單,選擇想吃什麼。你當然要點你喜歡的餐點,你果然點了自己愛的餐點,炙燒日本和牛,但是你沒想到的是,這個美食太熱門,賣完了,你很沮喪,不過還是算了,別的也很好吃,你選擇了沙朗牛排,但是他也沒了,你只好點一個義大利麵,因為你知道那是所有西餐廳一定會有的東西。如果都沒了,收攤關門的話,你就會放棄想吃飯的念頭嘛(不是你的頭喔啾咪)但是要怎麼完成這一系列的條件呢?
var Wagyu = false;
var SirloinSteak = false;
var Spaghetti = false;
if (Wagyu) {
console.log("耶有和牛可以吃");
} else if (SirloinSteak) {
console.log("額好吧沙朗也不錯");
} else if (Spaghetti) {
console.log("算了義大利麵也可以");
} else {
console.log("我不想吃飯了");
}
你可以這樣理解:
1.如果第一個條件為真,將會執行第一個主體
2.不然的話,第二個條件為真,將會執行第二個主體喔啾咪
3.不然的話,第三個條件為真,將會執行第三個主體喔啾咪
4.不然的話,執行最後那一串文字的部份喔啾咪
— — — — — — — —~分割線~ — — — — — — — — — — —
有要特別注意的地方,當使用這串else
部份的if...else
時,只會有一個主體執行,不會有第二個主體,如果有的話...那就是見鬼了(可能有特殊情形我不知道喔啾咪)
電腦只要發現有一個條件為真的話,它就會執行此主體,不會再去管其他的條件。如果執行上例程式碼,我將會打消想吃西餐的念頭,因為上例的程式碼中,3個主體條件都不符合,所以電腦只會執行文字的部份。
但是有一件事要注意;最後的else
可加不加。如果,沒有這個else
,當所有條件都不符時,這串程式碼的內容都不會執行。
已相同的方法讓我們在撰寫一個比較不一樣的程式碼。看我操作:
var a = 1;
if (a == 1) {
console.log("A");
} else if (a == 2) {
console.log("B");
} else if (a == 3) {
console.log("C");
}
你就把你當成是在森林探險,卻不小心迷路了,指南針、地圖啥的也不管用了,此時森林之神出現在你面前,並且給你了3條路,但是只有1條是可以讓你逃離森林的路,祂要你寫出程式碼,讓你和森林之神玩一場猜猜樂,選對正確的數字他才肯讓你走,問題來了,你要怎麼設計?
我們先設一個變數,就取名為『a』,這串程式碼的大綱大約是這樣:如果 a = 1 的話,那就執行第一個主體...以此類推,只要你更變了變數的數字,你的命運就會不同;到最後你猜對了,並成功的逃離這裡。
今天我們擁有了更多的選擇,也和森林之神玩了一場,下一章我們會知道第二章寫的「迴圈」是什麼,
那今天就到這裡嘍大家明天見~