JavaScript的forEach、every、some方法
背景
有时在业务中,常常会碰到迭代数组时,满足某个条件之后就break
掉的需求,但是Array
对象的forEach
函数并不支持continue
, break
关键字,最后无奈只能去写原生的for
循环
// 出现3之后停止循环
const arr = [6, 4, 1, 3, 9, 5]
forEach
forEach
函数会忽略返回值,并且无法中断循环,但是可以使用return
跳过本次循环
arr.forEach(item => {
if (item === 3) {
return
}
console.log(item)
}) // 6 4 1 9 5
for
原生的for
循环,可以使用关键字continue
跳过本次循环和关键字break
终止循环
for (let i = 0; i < arr.length; i++) {
if (arr[i] === 3) {
break
}
console.log(arr[i])
} // 6 4 1
every
迭代时返回值为false
时中断循环,可以使用return true
跳过本次循环
arr.every(item => {
console.log(item)
return item !== 3
}) // 6 4 1 3
some
迭代时返回值为true
时中断循环,可以使用return false
跳过本次循环
arr.some(item => {
console.log(item)
return item === 3
}) // 6 4 1 3
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?