数组高阶函数(map、filter、reduce、find、some、every)不修改原数组,通过声明式逻辑提升可读性与简洁性:map转换、filter筛选、reduce聚合、find/some/every专注布尔判断或单值查找。
数组的高阶函数(如 map、filter、reduce、find、some、every)是 JavaScript 中处理数组最有力的工具。它们不直接修改原数组,而是通过传入函数来声明“要做什么”,让代码更简洁、可读性更强、逻辑更聚焦。
map 对数组每个元素执行一次函数,并返回一个新数组。它替代了手动创建空数组 + 循环 push 的冗余写法。
map 直接表达“把每个元素变成另一个值”——语义清晰,一行可完成map 中做副作用(如修改外部变量),它只负责映射filter 返回所有满足条件的元素组成的新数组。相比 
for + if + push,它把“筛选逻辑”和“收集动作”合二为一。
filter 再 map,比如提取用户姓名列表:users.filter(u => u.active).map(u => u.name)
reduce 是最灵活的高阶函数,能实现求和、计数、分组、扁平化、甚至模拟 map 或 filter。它接收一个累加器(accumulator)和当前值,逐步合并成单个结果。
undefined 报错这些函数专注布尔逻辑或单值查找,语义明确、提前终止,性能更好。
find 返回第一个匹配项(或 undefined):users.find(u => u.id === 123)
some 判断是否存在满足条件的元素(遇到第一个 true 就停):tasks.some(t => t.done === false)
every 判断是否全部满足:permissions.every(p => userRoles.includes(p))
for + break + 标志变量更安全、更易理解