JavaScript数组方法按功能分为四类:会改变原数组的(如push、pop、splice、sort)、不改变原数组的(如map、filter、slice、concat)、遍历与判断类(如forEach、some、find、reduce)、转其他类型(如join、Object.fromEntries、flat)。
javascript 数组方法按功能分类,核心是看「它用来干什么」和「会不会动原数组」。分类清楚了,选方法就快,也不容易写错逻辑。
会改变原数组的方法
这类方法直接修改数组本身,调用后原数组内容、长度或顺序可能变化。适合需要就地更新的场景,但要注意避免意外污染数据。
- 增删元素:push(尾加)、pop(尾删)、unshift(头加)、shift(头删)——都返回对应值或新长度
- 任意位置操作:splice(万能增删改),可指定索引、删除个数、插入新项
- 重排结构:sort(排序)、reverse(反转)——sort 默认按字符串 Unicode 排,数字排序需传比较函数
不改变原数组、返回新数组的方法
这类方法安全、可预测,适合函数式编程风格,常用于数据转换、筛选等不可变操作。
- 映射转换:map —— 对每个元素执行操作,生成结构一致的新数组
- 条件筛选:filter —— 返回满足回调条件的所有元素组成的新数组
- 截取片段:slice —— 按起止索引复制子数组,不修改原数组
- 合并数组:concat —— 合并多个数组或值,返回新数组(也可用展开运算符替代)
遍历与判断类方法
主要用于逐项检查、触发副作用或汇总判断,多数不产生新数组,返回值类型明确。
当用户要求为 Java 代码添加注释、修改注释、审查注释、整理注释格式,或要求按照代码注释规范处理 Java 文件时,使用本技能。本技能用于统一生成和维护 Java 类注释模板、按 Git 对比 release 判断版本号、补充每行代码上方中文块注释、调整注释空行规则,并保持 Java 文件 UTF-8 无 BOM 编码。典型触发场景包括:补充类注释、更新 @version、检查 @author 来源、整理行尾注释、把注释放到代码上一行、检查注释是否符合规范、构建前检查 Java 注释风格。
- 纯遍历:forEach —— 执行回调,无返回值(返回 undefined),适合打印、发请求等副作用操作
- 聚合判断:some(只要一个真就返回 true)、every(全部为真才返回 true)
- 查找定位:find(返回第一个匹配元素)、findIndex(返回其索引)、includes(判断是否存在,支持 NaN)
- 归约计算:reduce —— 把数组逐步合并为单个值,比如求和、扁平化、分组
转成其他类型的方法
把数组变成字符串、对象或其他结构,常用于展示、传输或格式适配。
立即学习“Java免费学习笔记(深入)”;
- 转字符串:join —— 用指定分隔符拼接所有元素,返回字符串
- 转对象:Object.fromEntries() 配合 entries() 可将键值对数组转对象;Array.from() 可将类数组或可迭代对象转数组
- 扁平化:flat(ES2019)—— 展开嵌套数组,默认展开一层;flatMap 先 map 再 flat,一步到位

















