JavaScript continue 关键字
最后修改于 2025 年 4 月 16 日
在本文中,我们将展示如何使用 JavaScript 中的 continue
关键字来控制循环执行。
continue 关键字
continue
关键字用于跳过循环的当前迭代。 当遇到它时,它会立即跳转到下一个迭代,绕过当前迭代中剩余的任何代码。 这提供了对循环执行流程的精确控制。
continue
语句可用于 for
、while
和 do...while
循环。 当您需要根据特定条件跳过特定迭代时,它特别有用。
与完全退出循环的 break
不同,continue
仅跳过当前迭代。 如果循环条件仍然为真,则循环将继续使用下一个迭代执行。
for 循环中的基本 continue
以下示例演示了在 for 循环中 continue
关键字的基本用法。
for (let i = 0; i < 5; i++) { if (i === 2) { continue; } console.log(i); }
此循环运行 5 次,但在 i
等于 2 时跳过迭代。 continue 语句跳转到下一个迭代,跳过 console.log。 数字 0、1、3 和 4 被记录到控制台。
$ node main.js 0 1 3 4
while 循环中的 continue
continue
关键字在 while 循环中的工作方式类似。
let count = 0; while (count < 5) { count++; if (count === 3) { continue; } console.log(count); }
此 while 循环递增 count,并在 count 等于 3 时跳过迭代。请注意,我们在 continue 之前递增以避免无限循环。 输出显示了除 3 之外的所有数字。
$ node main.js 1 2 4 5
嵌套循环中的 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}`); } }
continue 语句仅跳过内部循环的当前迭代,其中 j 等于 1。 外部循环继续正常执行。 这表明 continue 仅影响一个嵌套级别。
$ node main.js i: 0, j: 0 i: 0, j: 2 i: 1, j: 0 i: 1, j: 2 i: 2, j: 0 i: 2, j: 2
带有标签语句的 continue
JavaScript 支持带标签的 continue 语句,以定位外部循环。
outerLoop: for (let i = 0; i < 3; i++) { innerLoop: for (let j = 0; j < 3; j++) { if (i === 1 && j === 1) { continue outerLoop; } console.log(`i: ${i}, j: ${j}`); } }
在这里,我们使用带标签的 continue 在满足特定条件时跳到外部循环的下一个迭代。 标签“outerLoop”标识要继续的循环。 这会跳过该外部循环周期的剩余内部循环迭代。
$ node main.js i: 0, j: 0 i: 0, j: 1 i: 0, j: 2 i: 1, j: 0 i: 2, j: 0 i: 2, j: 1 i: 2, j: 2
跳过奇数
continue
的一个常见用例是跳过特定值。
for (let i = 0; i < 10; i++) { if (i % 2 !== 0) { continue; } console.log(i); }
此示例通过使用 continue 跳过奇数来仅打印偶数。 条件检查该数字是否为奇数 (i % 2 !== 0),如果为真,则跳到下一个迭代。 这比将所有代码放在 else 块中更简洁。
$ node main.js 0 2 4 6 8
Continue vs break
区分 continue
和 break
很重要。
for (let i = 0; i < 5; i++) { if (i === 2) { continue; } if (i === 4) { break; } console.log(i); }
此示例展示了这两个关键字的实际应用。 当 i 为 2 时,continue
跳过当前迭代,而当 i 达到 4 时,break
完全退出循环。 输出演示了它们的不同行为。
$ node main.js 0 1 3
实际用例:处理有效数据
这是一个使用 continue
处理有效数据的实际示例。
const data = [12, 5, 8, 130, 44, null, 3, undefined, 18]; for (let item of data) { if (item === null || item === undefined) { continue; } console.log(`Processing valid item: ${item}`); // Additional processing would go here }
此代码处理一个数据数组,使用 continue 跳过 null 或 undefined 值。 当处理不完整或混乱的数据时,此模式很常见。 continue 语句使代码比嵌套条件更具可读性。
$ node main.js Processing valid item: 12 Processing valid item: 5 Processing valid item: 8 Processing valid item: 130 Processing valid item: 44 Processing valid item: 3 Processing valid item: 18
来源
在本文中,我们演示了如何使用 continue 关键字来控制 JavaScript 中的循环执行。