現在當我們要構思一個程式,他要可以輸出0~100的所有偶數,我們總不可能從console.log(0)...console.log(100)這樣一路寫下來,這時候我們需要一種方法,可以多次重複做某件事情,這種方法就是迴圈。
while的寫法跟if判斷式有點相近,都是後面接一個條件,如果條件成立就做底下的事情,以剛剛的舉例寫成while迴圈的話:
let number = 0;
while (number <= 100 ){
console.log(number);
number = number + 2;
}
// 0
// 2
// ...
除了while迴圈之外,javascript有另外一個使用頻率更高的,更簡潔的方法: for迴圈。
for迴圈的使用方式為: 在關鍵字for後面的括號必須要有兩個分號,第一個分號之前通常是聲明一個變數,第二個部分會放判斷條件,判斷迴圈是否要繼續進行,最後一個部分則是在每一次迴圈結束後更新迴圈狀態
for(let i = 0; i <= 100; i = i + 2){
console.log(i);
}
// 0
// 2
// ...
在需要每次執行完要更新狀態的情況下,for迴圈寫起來會比起while迴圈在簡潔一些。
如果要結束迴圈,除了讓迴圈的判斷條件不成立,變成false。還有另外一個方法,使用break關鍵字。
假設我們要找出100以後第一個可以被7整除的數字,我們可以這樣寫
let number = 100
while(number >= 100){
if(number % 7 == 0){
console.log(number);
break;
}
number = number + 1;
}
// 105
這樣程式就會從100開始,每次+1並判斷是否可以被7整除,如果可以被整除就把這個數字console出來並且停止迴圈。
題目: 把數字加總,最終濃縮成個位數
範例: 9527 => 9 + 5 + 2 + 7 => 23
let num = 9527;
let sum = 0;
while (num >= 1) {
sum += num % 10;
num = Math.trunc(num / 10);
//Math.trunc 是一個函數, 作用就像是數學中的無條件捨去小數
}
console.log(sum);
那今天的部分就先到這邊,我們明天在繼續