iT邦幫忙

2023 iThome 鐵人賽

DAY 4
0

現在當我們要構思一個程式,他要可以輸出0~100的所有偶數,我們總不可能從console.log(0)...console.log(100)這樣一路寫下來,這時候我們需要一種方法,可以多次重複做某件事情,這種方法就是迴圈。

While 迴圈

while的寫法跟if判斷式有點相近,都是後面接一個條件,如果條件成立就做底下的事情,以剛剛的舉例寫成while迴圈的話:

let number = 0;
while (number <= 100 ){
    console.log(number);
    number = number + 2;
}
// 0
// 2
// ...

for 迴圈

除了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);

那今天的部分就先到這邊,我們明天在繼續


上一篇
[Day3] if 條件控制
下一篇
[Day5] 函數
系列文
30天從零到有,帶你進入程式的世界30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言