首頁 >web前端 >前端問答 >JavaScript怎麼用for循環

JavaScript怎麼用for循環

WBOY
WBOY原創
2023-05-16 10:07:07991瀏覽

JavaScript 是一門強大的程式語言,能夠實現眾多功能。其中最基本的一種迴圈結構就是 for 迴圈。它允許我們根據條件重複執行一段程式碼,非常適用於需要重複操作某個物件集合或遍歷數組等場景。

for 迴圈由以下三個部分組成:迴圈初始化、迴圈條件、迴圈增量。語法結構如下:

for (循环初始化; 循环条件; 循环增量) {
  // 循环执行的代码
}

我們一起來詳細看一下每個部分的作用:

  • 循環初始化:在循環開始前執行一次,通常用來初始化計數器等變數。
  • 循環條件:用來決定是否繼續執行循環程式碼,如果條件為 true,繼續循環;如果為 false,停止循環。
  • 循環增量:在每次迴圈結束後執行一次,通常用來遞增或遞減計數器等變數。

接下來,我們透過一些範例來學習如何使用 for 迴圈。

1. 遍歷陣列

我們先看一個極為常見的應用場景:遍歷陣列。程式碼如下:

let numbers = [1, 2, 3, 4, 5];

for (let i = 0; i < numbers.length; i++) {
  console.log(numbers[i]);
}

以上程式碼定義了一個陣列 numbers,然後使用 for 迴圈來遍歷陣列中的每個元素。循環條件 i < numbers.length 確定了循環要執行的條件,而遞增操作 i 保證了每次循環都會自增。在循環體中,我們使用 console.log 函數來列印每個元素的值。

2. 建立一個乘法表

接下來,我們嘗試使用 for 迴圈來建立一個乘法表。程式碼如下:

for (let i = 1; i <= 9; i++) {
  for (let j = 1; j <= i; j++) {
    document.write(`${j}x${i}=${i*j} `);
  }
  document.write('<br>');
}

程式碼中嵌套了兩個 for 迴圈。外層循環變數 i 代表乘法表中的行數,內層循環變數 j 代表每一行中的列數。在每次內層循環結束後,我們會換行,以避免在同一行輸出多個乘積。

以上程式碼實作了一個簡單的乘法表,是初學者們很好的練習題目。

3. 巢狀的for 迴圈實作陣列求和

接下來,我們來看一個稍微複雜一點的範例:使用巢狀的for 迴圈來對二維陣列進行求和。程式碼如下:

let arrays = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

let sum = 0;

for (let i = 0; i < arrays.length; i++) {
  for (let j = 0; j < arrays[i].length; j++) {
    sum += arrays[i][j];
  }
}

console.log(sum);

以上程式碼定義了一個二維數組 arrays,然後透過巢狀的 for 迴圈來對數組中的每個元素進行求和。外層循環變數 i 代表陣列中的每一行,內層循環變數 j 代表每一行中的列數。求和操作 sum = arrays[i][j] 累積了陣列中的每個元素。最後,我們印出求和結果 console.log(sum)

4. 模擬遊戲中的 AI

最後,我們來看一個有趣的範例:使用 for 迴圈來模擬遊戲中的 AI 行為。程式碼如下:

let enemyHealth = 100;
let playerAttack = [10, 15, 20, 25, 30];

for (let i = 0; i < playerAttack.length; i++) {
  let damage = Math.floor(Math.random() * playerAttack[i]);
  enemyHealth -= damage;
  
  if (damage > 0) {
    console.log(`玩家使用技能${i+1},对敌人造成了${damage}点伤害!敌人还剩余${enemyHealth}点生命值。`);
  } else {
    console.log(`玩家技能${i+1}未能命中敌人!敌人还剩余${enemyHealth}点生命值。`);
  }
  
  if (enemyHealth <= 0) {
    console.log('敌人被击败了!');
    break;
  }
}

以上程式碼定義了一個敵人生命值和一個陣列 playerAttack,其中儲存了玩家的攻擊力。使用 for 迴圈來模擬玩家在遊戲中使用不同技能攻擊敵人的行為。在每次循環中,我們會產生隨機數來模擬技能命中後對敵人造成的傷害,並根據情況列印出相應的資訊。

如果敵人生命值被扣減到 0 或以下,遊戲結束,我們使用 break 語句來強制結束迴圈。

透過上述範例,我們可以看到 for 迴圈在 JavaScript 中的靈活應用,不僅能遍歷陣列、建立乘法​​表等常見操作,還能模擬遊戲中的 AI 行為。反覆實踐和運用 for 循環,能夠更好地理解和掌握它的奧秘,為自己的編程之路打下堅實基礎。

以上是JavaScript怎麼用for循環的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn