js for循环 break,break会跳出循环并执行循环后的语句
在上一篇文章中,我们带您学习了JS中的几种循环控制结构(while和do-while循环,for循环)。先说跳出循环的break和continue语句。希望对你有帮助!
从之前对loop的学习中我们知道,默认情况下,当表达式结果为false时,循环会自动退出循环,否则循环会一直持续下去。在某些情况下,我们可以主动退出循环,而不必等待它自动退出。JavaScript提供了两个语句break和continue来退出循环并跳过当前循环。
1、continue语句
continue语句用于跳过这个循环并执行下一个循环。当遇到continue语句时,程序会立即重新检测条件表达式,如果表达式结果为真,则开始下一个循环,如果表达式结果为假,则退出循环。
[示例1]使用continue语句跳出for循环:
脚本类型=文本/javascript
for(var I=1;i 10i ) {
如果(i % 2!=0) {
继续;
}
console.log(一);
}
/脚本分析:
for(var I=0;i 10I ){}语句可以循环出1到10之间的所有数字。
如果(i % 2!=0)语句用于判断I的值是否能被2整除。如果()中的值为真,则执行continue声明。
在循环体中,使用if(i% 2==0)语句进行判断。如果I的值能被2整除,请使用“console . log(I);”输出;如果I的值不能被2整除,则触发continue语句,跳出这个循环(无输出),执行下一个循环。
输出结果:
2、break语句
Break语句用于跳出当前语法结构,可以终止循环体的代码并立即跳出当前循环,执行循环后的代码(如果有的话)。
break和continue的区别在于continue语句只结束这个循环,而break语句终止整个循环的执行。
沿用上面的示例1中代码,将continue;换成break;,会输出什么?
脚本类型=文本/javascript
for(var I=1;i 10i ) {
如果(i % 2!=0) {
打破;
}
console.log(一);
}
/script答案是:什么也不输出。为什么会这样,托尼?我们来分析一下:
forx循环开始时,i=1,1是否小于10?当然,然后开始执行if(i% 2!=0)语句;
那么1能被2整除吗?显然不能,所以如果()中的值为true,“break”in if将被执行。语句,直接跳出了整个循环,没有机会执行“console . log(I);”声明。
3、嵌套 For 循环
值得注意的是,break和continue都只对当前循环有效。如果我们有嵌套循环,我们应该非常小心。让我们看看下面的例子:
for(设I=0;i5;i ) {
if (i % 2==0)继续;
for(设j=0;j 5;j ) {
if (j==2)破;
console.log(`i=${i},j=$ { j } `);
}
}这里我们有两个循环,每个循环会执行5次(0~4)。当I为偶数时,外部循环跳过当前循环,执行下一个循环。也就是说,只有当I为1或3时,才会执行内部循环。
只要j的值为2,内层的循环就终止了。所以j只有0和1。
最终结果如下:
4、JavaScript 标签
从JavaScript 1.2开始,标签可以和break结合,继续更精确地控制程序的执行。
JavaScript中的标签不同于HTML中的标签。JavaScript中的标记是一个标识符(类似于变量名),后跟一个冒号:JavaScript标签可以在任何语句或代码块之前声明,并与break或continue一起使用以跳出特定的循环。比如多个循环嵌套时,单独使用break只能跳出当前循环,不能跳出外循环。如果使用break with标签,可以一次跳出多个循环。
示例代码如下:
脚本类型=文本/javascript
Document.write(开始循环!br/);
Outerloop: //定义标签
for(var I=0;i5;i ) {
Document.write(外循环: I br/);
Innerloop: //定义标签
for(var j=0;j 5;j ) {
if(j ^ 3)破;//跳出内部循环
if (i==2)中断内环;//跳出内部消息
if (i==4)中断外部循环;//跳出外循环
Document.write(内部循环: j br/);
}
}
Document.write(循环结束!br/);
/脚本
注意:在break或continue和标签之间不能有换行符。此外,在标记名和相关循环之间不能出现其他代码。
【推荐学习:javascript高级教程】以上是JS循环学习的详细内容:破与续,更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。