首页 >web前端 >js教程 >如何在JavaScript中使用嵌套的for循环?

如何在JavaScript中使用嵌套的for循环?

WBOY
WBOY转载
2023-09-05 10:45:021027浏览

如何在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删除