首頁 >web前端 >js教程 >如何在JavaScript中使用嵌套的for迴圈?

如何在JavaScript中使用嵌套的for迴圈?

WBOY
WBOY轉載
2023-09-05 10:45:021010瀏覽

如何在JavaScript中使用嵌套的for迴圈?

我們使用 JavaScript 的 for 迴圈語句來重複循環體內的一組語句指定的次數。巢狀 for 循環,顧名思義,是由多個 for 迴圈組成的,一個循環嵌套在另一個循環內部。這使我們能夠循環遍歷矩陣等多維資料結構。

JavaScript 中的巢狀 for 迴圈

簡單的 for 迴圈會根據初始化值和終止條件執行指定的次數。另一方面,巢狀 for 迴圈在外部 for 迴圈內駐留一個或多個 for 迴圈。

文法

for(let i = 0 ; i < limit; i++){
   // statement
}

這將建立一個執行 limit 次的簡單 for 迴圈。這意味著它執行循環體內的語句限制次。

在巢狀迴圈中,for 迴圈體內的語句又是一個 for 迴圈。這會導致內部 for 迴圈一直執行到外部 for 迴圈的每次迭代。

for(let i = 0 ; i < limit; i++){
   for(let j = 0 ; j < limit; j++){
      // statement
   }
   // statement for outer loop
}

此範例中的內部循環對於外部循環的每次迭代運行 limit 次。因此,循環總共運行 limit x limit 次。

兩個迴圈的初始化值、終止條件、循環變數的更新是相互獨立的。

讓我們透過一個例子來看看巢狀 for 迴圈的工作原理。

範例 1

這裡我們將使用巢狀 for 迴圈來建立一個「#」的二維矩陣。

讓我們來看看相同的程式碼。

<!DOCTYPE html>
<html>
<body>
   <h3> The nested for loop in JavaScript</h3>
   <p> Enter number of rows and columns to create matrix</p>
   <form>
      <label >Rows : </label>
      <input type = "text" id = "rows"><br><br>
      <label > Columns : </label>
      <input type = "text" id = "cols"><br><br>
      <input type = "button" onclick = "fun()" value = "Create Matrix">
   </form>
   <br><br>
   <div id="result"></div>
   <script>
      function fun(){
         var text = "";
         var rows = document.getElementById("rows").value;
         var cols = document.getElementById("cols").value;
         for(let i = 0 ; i < rows; i++){
            for(let j = 0 ; j < cols ; j++){
               text += "#"
            }
            text += "<br>";
         }
         document.getElementById("result").innerHTML = text;
      }
   </script>
</body>
</html>

在上面的程式碼中,我們取得行數和列數的輸入,然後使用巢狀循環建立指定的矩陣。 注意,外部循環的終止條件決定矩陣的行數,內循環的終止條件決定矩陣的列數。

可以調整迴圈的參數(初始化值、終止條件、更新),使用巢狀迴圈來實現幾乎任何類型的巢狀遍歷。

讓我們看看如何使用巢狀循環來列印金字塔。

範例 2

這裡我們將使用 * 符號和使用者提供的高度來建立一個金字塔。讓我們來看看相同的程式碼。

<!DOCTYPE html>
<html>
<body>
   <h3>The nested for loop in javascript</h3>
   <p>Enter the height of the pyramid:</p>
   <form>
      <label>Height : </label>
      <input type="text" id="height"><br><br>
      <input type="button" onclick="fun()" value="Create Pyramid">
   </form>
   <br><br>
   <div id="result"></div>
   <script>
      function fun() {
         var text = "";
         var height = document.getElementById("height").value;

         // loop 1
         for (let i = 0; i < height; i++) {
            // loop 2
            for (let j = 0; j < height - i; j++) {
               text += " "
            }
            // loop 3
            for (let j = 0; j <= i; j++) {
               text += "*";
            }
            text += "<br>";
         }
         document.getElementById("result").innerHTML = text;
      }
   </script>
</body>
</html>

在上面的程式碼中,如輸出所示,在更改循環參數後,我們可以視覺化許多不同的遍歷模式。

注意程式中的外循環(循環1)決定了金字塔的高度。第一個內部循環(循環 2)決定每行開頭的空格字元數。第二個內部循環(循環 3)列印與目前迭代中金字塔的高度一樣多的 * 字元。

結論

巢狀循環是一種非常有用的結構,用途廣泛且經常使用。

以上是如何在JavaScript中使用嵌套的for迴圈?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除