3.11 條件式(Conditional)
在 javascript/practice 資料夾下,建立 condition.html 檔案,以便練習。
if 條件式
基本語法
if(這裡是條件式,可以 1 個以上的條件){
// 條件式如果是 true,就執行這裡大括號的程式
}如果大括號裡的程式只有一行,那大括號可以省略:
if(這裡是條件式,可以 1 個以上的條件)
console.log("hello");或
if(這裡是條件式,可以 1 個以上的條件) console.log("hello");if
如果 score 大於等於 60 的話,執行大括號裡的程式:
if else
如果 score 大於等於 60 的話,執行大括號裡的程式;反之,則執行 else 大括號裡的程式:
if else if
如果 score 大於等於 80 的話,執行大括號裡的程式;如果 score 小於 80、大於等於 60,就執行 else if 對應的大括號裡的程式:
以下這個程式,會執行哪一個 alert?
可以使用多個 else if:
if else if else
且、或、布靈值反轉
且(&&):
或(||):
布靈反轉(!):
switch 條件式
基本形式
執行以下程式:
將第一行 var my_number = 1; 改成 var my_number = "1";,再執行看看。
再執行以下程式:
將第一行 var my_string = "def"; 改成 var my_string = "other";,再執行看看。
結論:
case:依指 switch 裡的變數,給定不同的情況所要執行的程式。break:用來跳出 switch。default:case的情況都不符合的時候,就執行 default 裡的程式。
關於 break
執行以下程式:
case 1 的部份,少了 break;,那就表示不會跳出 switch 條件式。所以 case 1 執行完程式之後,繼續執行 case 2 裡的程式,然後 case 2 執行完遇到 break;,就跳出 switch 條件式。
可再改寫成以下,執行看看:
意思是 my_number 的值如果是 1 或 2,都執行相同的程式。
關於 default
執行以下程式:
此例會執行 default 裡的程式,因為沒有任何 case 情況符合。
如果將 default 區域的程式都移除,如下:
此例,因為沒有任何 case 情況符合,也沒有 default 相關的程式,所以就直接結束 switch 條件式了。另外,此例的最後一個 break; 也可以省略不寫了。
練習
直接寫在 condition.html 檔案即可。
一個店家,有兩個資訊:店家名稱(store_name)、店家星等(store_star),宣告如下:
關於星等,如果:
星等是 -1(含) 以下,就在 console 中顯示「A 店家星等是負的」。
是 0 顆星,就在 console 中顯示「A 店家無獲得星等」。
是 1 顆星,就在 console 中顯示「A 店家星等 1 顆星」。
是 2 顆星,就在 console 中顯示「A 店家星等 2 顆星」。
超過 2 顆星,就在 console 中顯示「A 店家星等超過 2 顆星」。
參考作法:
Last updated