for和forEach怎么跳出循环

for

continue语句

continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。

for (let i = 0; i < arr.length; i++) {
    if (i === 2) {
        continue
    }
    console.log('for===', arr[i])
}

// 结果
// for===continue 1
// for===continue 2
// for===continue 4
// for===continue 5

break语句

break 语句可用于跳出循环

for (let i = 0; i < arr.length; i++) {
    if (i === 2) {
        break
    }
    console.log('for===break', arr[i])
}

// 结果
// for===break 1
// for===break 2

forEach

forEach中不能使用continue和break

return语句

forEach中使用return语句的作用只能跳出当前循环,并不能跳出整个循环。

arr.forEach((a, i) => {
    if (i === 2) {
        return
    }
    console.log('forEach===return', a)
})

// 结果
// forEach===return 1
// forEach===return 2
// forEach===return 4
// forEach===return 5

如果需要跳出整个循环,需要throw抛异常,如下

try {
    arr.forEach((a, i) => {
        if (i === 2) {
            throw new Error()
        }
        console.log('forEach===throw', a)
    })
} catch (e) {
    console.log(e)
}

return是用于函数中的哦,for语句中不能使用return哦

你可能感兴趣的:(for和forEach怎么跳出循环)