JavaScript中for循环,while循环

一 for循环

1. 基本 for 循环

这是最常见的循环形式,用于重复执行代码块直到满足某个条件:

for (let i = 0; i < 5; i++) {
  console.log(i); // 输出 0 1 2 3 4
}
  • let i = 0:初始化表达式,设置循环变量 i 的初始值。
  • i < 5:条件表达式,循环在这个条件为 true 时继续执行。
  • i++:迭代表达式,每次循环后执行,这里是将 i 增加 1。

2 for…of 循环

用于遍历数组或其他可迭代对象(例如字符串)中的值:

const array = [10, 20, 30];
for (const value of array) {
  console.log(value); // 输出 10 20 30
}

3. for…in 循环

用于遍历对象的可枚举属性(包括原型链上的属性):

const obj = { a: 1, b: 2, c: 3 };
for (const key in obj) {
  console.log(key, obj[key]); // 输出 "a 1", "b 2", "c 3"
}

4. 嵌套 for 循环

你可以在一个 for 循环内部使用另一个 for 循环:

for (let i = 0; i < 3; i++) {
  for (let j = 0; j < 2; j++) {
    console.log(`i=${i}, j=${j}`);
  }
}
// 输出:
// i=0, j=0
// i=0, j=1
// i=1, j=0
// i=1, j=1
// i=2, j=0
// i=2, j=1

5. for 循环与 break 和 continue

  • break 语句用于退出循环
for (let i = 0; i < 10; i++) {
  if (i === 5) {
    break; // 退出循环
  }
  console.log(i); // 输出 0 1 2 3 4
}
  • continue 语句用于跳过当前迭代的剩余部分,直接开始下一次迭代
for (let i = 0; i < 10; i++) {
  if (i % 2 === 0) {
    continue; // 跳过偶数
  }
  console.log(i); // 输出 1 3 5 7 9
}

二 while 循环

在 JavaScript 中,while 循环用于在给定条件为 true 时重复执行一个代码块。它的基本语法如下:

1 基本 while 循环

let i = 0;
while (i < 5) {
  console.log(i); // 输出 0 1 2 3 4
  i++;
}
  • let i = 0;:初始化循环变量 i。
  • while (i < 5):循环条件,只要条件为 true,就会继续执行循环体。
  • i++:在循环体内部更新循环变量,确保最终条件会变为 false,避免无限循环。

2 do…while 循环

do…while 循环和 while 循环类似,但它确保循环体至少执行一次,因为条件检查是在循环体执行之后:

let i = 0;
do {
  console.log(i); // 输出 0 1 2 3 4
  i++;
} while (i < 5);

3 while 循环与 break 和 continue

  • break 语句:用于跳出 while 循环,无论条件是否为 true。
let i = 0;
while (i < 10) {
  if (i === 5) {
    break; // 退出循环
  }
  console.log(i); // 输出 0 1 2 3 4
  i++;
}
  • continue 语句:用于跳过当前循环迭代的剩余部分,立即进入下一次迭代。
let i = 0;
while (i < 10) {
  if (i % 2 === 0) {
    i++;
    continue; // 跳过偶数
  }
  console.log(i); // 输出 1 3 5 7 9
  i++;
}

3 无限循环

如果循环条件始终为 true,循环将永远执行:

while (true) {
  console.log("This will run forever!");
  // 注意:务必使用 `break` 或其他方法退出循环,避免无限循环
}

在实际使用中,要确保循环条件在某个点会变为 false,以避免无限循环。如果条件依赖于外部因素或复杂逻辑,确保它能在适当时退出是很重要的。

三 JavaScript break 和 continue 语句

在 JavaScript 中,break 和 continue 语句用于控制循环(如 for、while 和 do…while)的执行流程。它们分别用于退出循环和跳过当前迭代。下面是它们的详细用法和示例:

1 break 语句

break 语句用于退出当前循环,无论条件是否为 true。它会立即终止循环的执行并跳出循环体。

例子

for (let i = 0; i < 10; i++) {
  if (i === 5) {
    break; // 退出循环
  }
  console.log(i); // 输出 0 1 2 3 4
}

在这个例子中,当 i 等于 5 时,break 语句会终止 for 循环,因此循环体中的 console.log(i) 只会输出 0 到 4。

2 continue 语句

continue 语句用于跳过当前循环迭代的剩余部分,并立即开始下一次迭代。它不会终止整个循环,只是跳过当前循环中的代码块的剩余部分。

例子

for (let i = 0; i < 10; i++) {
  if (i % 2 === 0) {
    continue; // 跳过偶数
  }
  console.log(i); // 输出 1 3 5 7 9
}

在这个例子中,continue 语句会跳过 console.log(i) 对偶数的输出,因此只会输出奇数。

3 使用 break 和 continue 语句的示例

嵌套循环中的 break 和 continue

  • break 语句:

当在嵌套循环中使用 break 语句时,它只会终止最内层的循环。如果需要退出所有嵌套的循环,可以使用标签(label)和 break 语句组合。

outerLoop: // 标签
for (let i = 0; i < 5; i++) {
  for (let j = 0; j < 5; j++) {
    if (i === 2 && j === 3) {
      break outerLoop; // 退出外层和内层循环
    }
    console.log(`i=${i}, j=${j}`);
  }
}

在这个例子中,当 i 等于 2 且 j 等于 3 时,break outerLoop 会退出两个循环。

  • continue 语句:

continue 语句也仅影响到当前所在的循环层级。

for (let i = 0; i < 3; i++) {
  for (let j = 0; j < 3; j++) {
    if (j === 1) {
      continue; // 跳过当前的内层循环迭代
    }
    console.log(`i=${i}, j=${j}`);
  }
}

在这个例子中,当 j 等于 1 时,continue 会跳过内层循环的 console.log 语句,因此只会输出 i 和 j 的组合,其中 j 不等于 1。

4 总结

  • break 语句:用于完全退出当前循环。
  • continue 语句:用于跳过当前迭代的剩余部分,立即进入下一次迭代。

这两个语句在控制循环流和处理特定条件下的逻辑时非常有用。使用时要确保逻辑清晰,避免产生难以调试的复杂循环行为。

  • 22
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值