for循环中,break可跳出循环。continue跳过本次循环,执行下一次循环 。
forEach中,只能用return跳过本次循环,执行下一次。作用跟for循环的continue一样。
let arr1 = [1, 3, 5, 7, 9]
for (let i = 0; i < arr1.length; i++) {
if (i === 1) {
break // 跳出循环
}
console.log(arr1[i]) // 1
}
for (let i = 0; i < arr1.length; i++) {
if (i === 2) {
continue // 跳过本次循环,继续下一个循环
}
console.log(arr1[i]) // 1 5 7 9
}
/**
* return在forEach中可以用来跳过本次循环
*/
arr1.forEach((v, i) => {
if (i === 2) {
return // i = 2时,跳过本次循环,进入下一个
}
console.log(v) // 1 3 7 9
})
同理:for循环一个对象时也是适合break和continue
let obj = {
name: 'Anny',
age: 14,
address: '宁波市'
}
for (let key in obj) {
if (key === 'age') {
break // 当key等于age时就会跳出整个循环
}
console.log(key) // name
}
console.warn('-------')
for (let key in obj) {
if (key === 'age') {
continue // 当key等于age时,就会跳过此次循环,进入下一次循环
}
console.log(key) // name address
}