JavaScript:数组常用操作方法的总结表格

方法名 作用描述 是否改变原数组 返回值 示例
push 向数组尾部添加一个或多个元素 新数组长度 arr.push(5) → 返回长度
unshift 向数组头部添加一个或多个元素 新数组长度 arr.unshift(0) → 返回长度
pop 删除最后一个元素 被删除的元素 arr.pop() → 返回删除的元素
shift 删除第一个元素 被删除的元素 arr.shift() → 返回删除的元素
splice 删除/替换/添加任意位置元素 被删除元素组成的数组 arr.splice(1,2) → 返回删除部分
join 将数组转为字符串 连接后的字符串 arr.join('-') → "a-b-c"
reverse 反转数组元素顺序 反转后的数组 arr.reverse() → 原数组反转
sort 排序数组元素 排序后的数组 arr.sort() → 原数组排序
concat 拼接多个数组 新数组 arr.concat([4,5]) → 新数组
indexOf 查找元素首次出现的索引 索引值(未找到返回-1) arr.indexOf('a') → 0

关键特性总结:

  1. 原地修改方法 (直接改变原数组):
    pushunshiftpopshiftsplicereversesort

  2. 非破坏性方法 (不改变原数组,返回新结果):
    joinconcatindexOf

  3. 返回值差异

    • 添加/删除类:push/unshift返回长度,pop/shift返回被删元素

    • splice返回被删元素的数组

    • concat返回拼接后的新数组(不修改原数组)

使用注意:操作数组时需明确是否需要保留原数组,非破坏性方法可避免意外修改原始数据。

相关推荐
paeamecium5 分钟前
【PAT甲级真题】- Student List for Course (25)
数据结构·c++·算法·list·pat考试
Book思议-13 分钟前
【数据结构】栈与队列全方位对比 + C 语言完整实现
c语言·数据结构·算法··队列
SteveSenna14 分钟前
项目:Trossen Arm MuJoCo
人工智能·学习·算法
NAGNIP26 分钟前
一文搞懂CNN经典架构-DenseNet!
算法·面试
sunny_30 分钟前
💥 Claude Code 源码泄露?我把这个最强 AI Coding Agent 的架构扒干净了
前端·agent·claude
道法自然|~31 分钟前
BugCTF黄道十二宫
算法·密码学
西洼工作室34 分钟前
React轮播图优化:通过延迟 + 动画的组合,彻底消除视觉上的闪烁感
前端·react.js·前端框架
yaaakaaang43 分钟前
(八)前端,如此简单!---五组结构
前端·javascript
我是若尘1 小时前
我的需求代码被主干 revert 了,接下来我该怎么操作?
前端·后端·代码规范
魁首1 小时前
Claude Code 源码泄露的背后,到底与Codex,Gemini 有啥不一样?
前端·openai·claude