1.直接 break;只跳出一层循环(continue 跳出当次循环)
这种情况等同于省略label,如果省略label则中断当前循环或者
switch,如果有label,则终止指定的label语句
for (let i = 0; i < 6; i++) {
for(let j = 0; j < 6; j++) {
if(i === 1 && j === 3) {
break
}
console.log(i, j);
}
}
运行结果:
2.label语法,可以跳出被标记的地方
(1)break
(2)continue
return语句
return语句用于指定函数返回的值且return语句只能出现在函数体内。
function loop() {
let i = 0
while(i < 5) {
if(i > 2) return
console.log(i)
i++
}
console.log('end')
}
loop()
// 输出
//0
// 1
// 2
forEach语句
forEach()方法对数组的每个元素执行一次提供的函数。forEach是数组原型上的一个遍历方法,这里拿出来讲主要是因为这也是一个非常常见的循环方法,而且经常会跟上面的循环搞混。
主要区别在于:没有办法中止或者跳出 forEach() 循环,除了抛出一个异常。如果你需要跳出循环请考虑使用for ... of语句,或其他数组方法,比如:Array.prototype.every(),Array.prototype.some()等。
function test() {
var a = [1, 2, 3, 4, 5]
a.forEach(v => {
if(v===2) return
console.log(v)
})
console.log('end')
}
test()