返回

洞见 JavaScript 循环:while 与 do while

前端

循环的必要性

在编程中,我们经常需要执行重复的任务或操作。例如,我们需要将一个数组中的所有元素打印出来,或者计算一系列数字的总和。为了避免编写重复的代码,我们可以使用循环结构。循环允许我们根据一定的条件反复执行一段代码,直到条件不再满足时停止执行。

while 循环

while 循环是最常用的循环结构之一。它使用一个条件语句来控制循环的执行。当条件为真时,循环会执行循环体内的代码。当条件变为假时,循环就会停止执行。

while (condition) {
  // 循环体
}

例如,以下代码使用 while 循环计算 0 到 100 之间的偶数之和:

let sum = 0;
let i = 0;

while (i <= 100) {
  if (i % 2 === 0) {
    sum += i;
  }
  i++;
}

console.log("The sum of even numbers from 0 to 100 is:", sum);

在这个例子中,条件语句 i <= 100 检查变量 i 是否小于或等于 100。如果条件为真,循环体内的代码就会执行,即计算变量 i 的值是否为偶数,如果是偶数,则将 i 的值添加到变量 sum 中。然后,变量 i 的值增加 1。循环会一直执行,直到条件变为假,即 i 的值大于 100 时停止执行。

do while 循环

do while 循环与 while 循环非常相似,但它们之间有一个重要区别。do while 循环会先执行一次循环体内的代码,然后再检查条件是否为真。这意味着,do while 循环至少会执行一次循环体内的代码,即使条件为假也是如此。

do {
  // 循环体
} while (condition);

例如,以下代码使用 do while 循环计算 0 到 10 之间的奇数之和:

let sum = 0;
let i = 0;

do {
  if (i % 2 !== 0) {
    sum += i;
  }
  i++;
} while (i <= 10);

console.log("The sum of odd numbers from 0 to 10 is:", sum);

在这个例子中,循环体内的代码会先执行一次,即计算变量 i 的值是否为奇数,如果是奇数,则将 i 的值添加到变量 sum 中。然后,变量 i 的值增加 1。然后,条件语句 i <= 10 会检查变量 i 是否小于或等于 10。如果条件为真,循环体内的代码会再次执行。循环会一直执行,直到条件变为假,即 i 的值大于 10 时停止执行。

比较 while 循环和 do while 循环

while 循环和 do while 循环都是非常有用的循环结构,它们各有其适用场景。

  • while 循环适合用于当我们知道循环的执行次数时,或者当我们希望在循环开始之前检查条件是否为真时。
  • do while 循环适合用于当我们不知道循环的执行次数时,或者当我们希望在循环结束之后检查条件是否为真时。

结语

while 循环和 do while 循环是 JavaScript 中非常重要的循环结构,它们可以帮助我们编写更强大、更有效的代码。通过理解这两种循环结构的语法、工作原理和适用场景,我们可以轻松地解决各种常见的编程问题。