標籤:組元 等於 跳過 loop 輸出 gpo pre 重複 cas
條件陳述式
條件陳述式(Conditional statement)是JavaScript裡面的基本結構之一,程式根據運算式的真假決定執行或者跳過某個分支,於是,條件陳述式有時候也可以稱為“分支語句”
1. if & else if & else
基本寫法如下:
if (運算式1) { // 如果運算式1為真,執行代碼塊1 代碼塊1} else if (運算式2) { // 如果運算式2為真,執行代碼塊2 代碼塊2} else { // 否則,執行代碼塊3 代碼塊3}
舉個栗子:
var score = 78;if (score >= 90) { alert("成績:優");} else if(score >= 80) { alert("成績:良");} else if(score >= 70) { alert("成績:中");} else if(score >= 60) { alert("成績:差");} else { alert("成績:不及格");}// 彈出結果:“成績:中”
2. switch
上面的if & else if & else邏輯看著還是有點混亂,而且要寫多個運算式,結構並不是很清晰明了。於是,有了switch語句
基本寫法如下:
switch(n) { case 1: // 如果n==1,執行代碼塊1 代碼塊1; break; case 2: // 如果n==2,執行代碼塊2 代碼塊2; break; case 3: // 如果n==3,執行代碼塊3 代碼塊3; break; default: // 如果n都不等於以上情況,執行代碼塊n 代碼塊n; break;}
舉個栗子:
var day = 4;switch (day) { case 0: alert("星期日"); break; case 1: alert("星期一"); break; case 2: alert("星期二"); break; case 3: alert("星期三"); break; case 4: alert("星期四"); break; case 5: alert("星期五"); break; default: alert("星期六"); break;}// 彈出結果:“星期四”
迴圈語句
同樣的,迴圈語句(looping statement)也是JavaScript的基本結構之一,這種結構可以重複執行一段代碼直至到給定的條件不成立。
JavaScript有4種迴圈語句:while & do/while & for & for...in
每個迴圈結構都有略微的不同,要注意區分,如果可以事先確定迴圈次數的,用for迴圈,否則,考慮用while 或者 do/while
其中 while 和 do/while 又有稍稍不同,while迴圈是先判斷後執行,而do/while迴圈是先執行後判斷。因此,do/while是至少會執行一次代碼,不管條件成立與否。
PS:while結尾處不必添加分號,do/while在結尾處需要添加分號
還是舉個栗子說明吧
求和:1+2+3+...+100
1. while
// while 迴圈var sum1 = 0;var j = 1;while (j <= 100) { sum1 = sum1 + j; j++;}alert("1 + 2 + 3 + ... + 100 = " + sum1); // 5050
2. do/while
// do while 迴圈var sum2 = 0;var k = 1;do { sum2 = sum2 + k; k++;} while(k <= 100);alert("1 + 2 + 3 + ... + 100 = " + sum2); // 5050
3. for
// for 迴圈var sum3 = 0;for (let i = 1; i <= 100; i++) { sum3 = sum3 + i;}alert("1 + 2 + 3 + ... + 100 = " + sum3); // 5050
4. for...in
//for ... in遍曆數組元素var arr = [1,2,3,4,5,6,7,8,9,10];for (var i in arr) { console.log(arr[i]);}//輸出數組元素:1,2,3,4,5,6,7,8,9,10
其中,for/in 通常用來遍曆對象成員屬性
//for ... in遍曆數組索引for (var key in arr) { console.log(key);}// 輸出數組索引(數組對象的屬性):0,1,2,3,4,5,6,7,8,9
JavaScript基本文法 -- 條件陳述式 & 迴圈語句