数组的 forEach 用于循环遍历数据,会对数组中有效的每一项执行一次回调函数,可是在遍历回调中使用 break 或 continue 会报错,使用 return 也没法终止循环。数组
Array.forEach((currentValue, index, array, thisArg) => {})bash
let arr = [1, 2, 3]
arr.forEach(item => {
if (item === 2) {
break // 报错
}
console.log(item)
})
复制代码
let arr = [1, 2, 3]
arr.forEach(item => {
if (item === 2) {
continue // 报错
}
console.log(item)
})
复制代码
let arr = [1, 2, 3]
arr.forEach(item => {
if (item === 2) {
return
}
console.log(item)
})
复制代码
let arr = [1, 2, 3]
try {
arr.forEach(item => {
if (item === 2) {
throw('循环终止')
}
console.log(item)
})
} catch(e) {
console.log('e: ', e)
}
复制代码
// 使用 Array.some()
arr.some(item => {
console.log('b: ',item)
return item === 2 // 当有数组有一项知足条件时结束并返回true
})
// 使用 Array.ervey()
arr.every(item => {
console.log('c: ',item)
return item !== 2 // 检查数字中是否每一项都知足条件,若是有一项不知足就结束循环并返回false
})
复制代码