JavaScript入門篇 - 迴圈
迴圈指的是透過 “遞增” 或 “遞減” 來完成退出的條件,使我們不用反覆撰寫相同的程式,在 JS 中,常見的迴圈語法有 for 和 while 兩種
for 迴圈
for 基本寫法
- 使用
for開頭 - 接著小括號
()的內容分為三個部分, 初始值、條件、更新內容 - 當滿足條件,就會執行 大括號
{}內的程式碼 - 當執行完 大括號
{}內的程式碼,就會 更新值,如果符合條件,就會再次執行 大括號{}內的程式碼,如果不符合,就會結束並 跳出迴圈
for 與 array 的寫法
在使用 for 取的陣列中的資料時,可以透過 .length 來取的陣列的長度,以此作為 for 迴圈執行次數的條件
1 | // 撈出每個農場的農夫名字 |
for 與 if 的寫法
透過在 for 中加入 if 可以為撈出的資料設定條件,而非撈出所有資料
1 | // 撈出小雞數量超過 100 隻的農夫 |
for 加總
透過 += 我們可以不斷地將前面的項目累加上去
1 | // 將所有香蕉數量加總 |
while 迴圈
while 和 for 在原理上大同小異,只是在寫法上有點不同
- 在外層宣告 “初始值”
- 使用
while開頭 - 接著 小括號
()包住 條件 - 再接著 大括號
{}包住 符合條件時執行的內容 - 符合條件時執行的內容 後才寫 “更新值”
1 | "初始值" |
for 與 while 的差異
適合 for 的情境
因為 for 包含 初始值、條件、 更新值 三部分,能夠一目了然執行次數,所以更適合用在迴圈執行次數 “明確” 的狀態
適合 while 的情境
因為 while 只包含 條件,所以較適合用在迴圈執行次數 不明確 的狀態
無窮迴圈
當條件設定錯誤,不管如何都會符合條件時,就會無限執行內部程式碼,無法跳出迴圈,稱為 “無窮迴圈”
1 | // 當 i 不管如何都會大於等於 0 |
break 與 continue
break : 會直接跳出迴圈
找到陣列中第一個 非 0 的數字並印出
1 | var array = [0,0,7,0,9]; |
continue: 只會跳過這次,然後繼續執行下一次迴圈
印出 1 ~ 10 的數字但跳過 3 的倍數
1 | for (var i = 1; i <= 10; i++){ |