js中for循环的几种结束方法
break单层循环// 单层循环for(var i = 1;i<6;i++){console.log(i);if(i > 3) break;}console.log(666)// 输出 1 2 3 4// 输出 666嵌套循环// 不指定标识的嵌套循环for(var i = 1;i<4;i++) {for(var j = 1;j < 6;j++) {console.log(
·
break
单层循环
// 单层循环
for(var i = 1;i<6;i++){
console.log(i);
if(i > 3) break;
}
console.log(666)
// 输出 1 2 3 4
// 输出 666
嵌套循环
// 不指定标识的嵌套循环
for(var i = 1;i<4;i++) {
for(var j = 1;j < 6;j++) {
console.log(i * j)
if(j > 2) break
}
}
// 输出 1 2 3 2 4 6 3 6 9
// break只会结束最里层的for循环,继续外面的for循环
指定标识的嵌套循环
// 不指定标识的嵌套循环
foo:for(var i = 1;i<4;i++) {
for(var j = 1;j < 6;j++) {
console.log(i * j)
if(j > 2) break
if( i > 2) break foo
}
}
// 输出 1 2 3 2 4 6 3
// break foo将会结束带有foo标识的for循环(或是代码块也可以),继续执行foo标识后面的代码块
在function中使用return
(function(){
for(var i = 1;i<4;i++) {
for(var j = 1;j < 6;j++) {
console.log(i * j)
if(j > 2) return
}
}
console.log(666)
})()
// 输出 1 2 3
// 使用return不单单终止循环,还将不再执行后续的函数
带标签的循环 / 代码块十分少见,也不建议使用。不过在某些情况下它们也能派上用场,这时请务必将注释写清楚!
更多推荐
已为社区贡献3条内容
所有评论(0)