demo:
for(var i = 1 ; i <= 5 ; i++){
// 执行结果是 1 2
// i 等于 3 时 之后的 console.log() 会被终止 没有 输出3
// 之后的循环 i为4 5 的循环也会被终止 没有输出 4 5
if(i === 3){
break;
}
console.log(i);
}
for(var i = 1 ; i <= 5 ; i++){
// 执行结果是 1 2 4 5
// i 等于 3 时 之后的 console.log() 会被终止 没有 输出3
// 之后的循环 i为4 5 的循环 会继续执行 输出 4 5
if( i === 3 ){
continue;
}
console.log(i);
}
</script>
// 随机666 求次数
// 定义一个变量 存储 循环次数
var time = 0;
// 定义一个死循环
while(true){
// 每次循环生成一个随机数
var num = parseInt( Math.random() * (999+1-100) + 100 );
// 循环次数++
time++;
// 当 随机数 为 666 时
if( num === 666 ){
// 执行 break 终止循环
break;
}
// 特别注意: time++ 一定要写在 break 之前
// 不然会被 终止 少计算一次循环次数
// 如果 非要将 time++ 写在 break 之下
// time 初始值就要 +1
}
console.log(num);
console.log(time);
// 1-100 偶数累加求和
var res = 0;
for(var i = 1 ; i <= 100 ; i++){
// 奇数跳出循环 不执行累加
if( i % 2 !== 0){
// i 是 奇数 执行 continue
// 跳出循环 终止当前的 res += i 的累加
continue;
}
res += i;
}
console.log(res);
</script>
总结:
break 和 continue
在 switch 中 break 是 终止 switch 穿越的效果
在 独立的if判断 中 不能 使用 break
循环中 break(终止 之后所有程序) 的作用 是 终止循环的一切执行程序
1, 会终止 本次循环 break 之后程序的执行
2, 之后的循环次数 也会被终止
循环中 continue(终止 当前程序 之后程序正常执行) 的作用 是 终止本次循环程序的执行
1, 会终止 本次循环 continue 之后程序的执行
2, 之后的循环次数 会继续执行