我们常常写循环的时候,可能会遇到嵌套循环,如果出现退出循环,一层还好,多层循环就费劲了,传统做法是加 flag
,如下:
for (let i = 0; i < 10; i++) {
let flag = false
for (let j = 0; j < 5; j++) {
console.log(j + i)
if (j + i >= 10) {
console.log('退出顶层循环')
flag = true
break;
}
}
if (flag) {
break
}
}
这里我们推荐使用更好的方式:JS Lable
,标记一个值,如下:
outer: for (let i = 0; i < 10; i++) {
for (let j = 0; j < 5; j++) {
console.log(j + i)
if (j + i >= 10) {
console.log('退出顶层循环')
break outer;
}
}
}