
break 用于彻底跳出当前循环,continue 用于跳过本次循环剩余代码,直接进入下一次迭代。
break:立即终止整个循环
一旦执行 break,循环立刻结束,程序继续执行循环之后的语句。它常用于满足某个条件时提前退出,比如查找目标值后不再继续遍历。
- 只影响**最内层**的 for、while 或 do-while 循环(或 switch)
- 在嵌套循环中,若想跳出外层循环,需配合标签(label)使用
- 示例:
for (let i = 0; i if (i === 3) break;
console.log(i); // 输出 0, 1, 2
}
continue:跳过本次循环,进入下一轮
continue 不终止循环,而是跳过当前迭代中 continue 后面的所有语句,直接检查循环条件并开始下一次迭代。
- 同样只作用于最近的一层循环
- 常用于过滤掉某些不满足条件的情况,避免嵌套 if
- 示例:
for (let i = 0; i if (i % 2 === 0) continue;
console.log(i); // 输出 1, 3
}
break 和 continue 都不能用在非循环/switch 的语句中
它们不是通用的“跳转指令”,必须出现在合法的循环体或 switch 块内,否则会报语法错误(SyntaxError)。例如,直接写在函数顶层或 if 块里(且该 if 不在循环中)是非法的。
- 错误示例:
if (true) {
break; // ❌ 报错:Illegal break statement
} - 正确做法:把逻辑包进循环,或改用 return(在函数内)、throw 等其他控制流方式
用标签(label)精确控制多层循环
当有嵌套循环时,普通 break 或 continue 只影响最内层。加标签可指定跳出或跳过的具体层级。
- 语法:在循环前加标识符 + 冒号,如
outer:;然后用break outer;或continue outer; - 示例:
outer: for (let i = 0; i for (let j = 0; j if (i === 1 && j === 1) break outer;
console.log(i, j); // 最多输出到 (1,0),然后跳出两层循环
}
}
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











