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返回拼接后的新数组(不修改原数组)

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

相关推荐
小雨下雨的雨5 分钟前
井字棋AI机器人实现详解 - Minimax算法实战-鸿蒙PC Electron框架完成
前端·人工智能·算法·华为·electron·鸿蒙
xieliyu.3 小时前
Java算法精讲:双指针(三)
java·开发语言·算法
一条小锦吕*3 小时前
基于Spring Boot + 数据可视化 + 协同过滤算法的推荐系统设计与实现(源码+论文+部署全讲解)
spring boot·算法·信息可视化
ZC跨境爬虫4 小时前
跟着 MDN 学JavaScript day_7:数学运算与逻辑判断实战测试
开发语言·前端·javascript·学习·ecmascript
fangdengfu1234 小时前
ES分析系统各个服务日志占用量
java·前端·elasticsearch
凌云拓界4 小时前
文件管理:让AI安全操作你的电脑 ——CogitoAgent开发实战(三)
javascript·人工智能·架构·开源·node.js
cfm_29144 小时前
Redis五大基本数据结构底层了解
数据结构·数据库·redis
凌云拓界5 小时前
联网能力:让AI看见更广阔的世界 ——CogitoAgent开发实战(四)
javascript·人工智能·架构·node.js·创业创新
如竟没有火炬5 小时前
最大矩阵——单调栈
数据结构·python·线性代数·算法·leetcode·矩阵
8Qi85 小时前
LeetCode 1143 & 718:最长公共子序列 / 最长重复子数组
算法·leetcode·职场和发展·动态规划