JavaScript数组操作方法全录

改变原数组的方法:

typescript 复制代码
push() - 将一个或多个元素添加到数组的末尾,并返回新数组的长度。
pop() - 从数组中移除最后一个元素,并返回该元素。
shift() - 从数组中移除第一个元素,并返回该元素。
unshift() - 将一个或多个元素添加到数组的开头,并返回新数组的长度。
splice() - 在指定的索引位置添加或移除元素,并返回被移除的元素。
reverse() - 反转数组中元素的顺序。
sort() - 对数组元素进行排序。

不改变原数组的方法:

typescript 复制代码
concat() - 将两个或多个数组合并为一个新数组。
slice() - 返回数组的一个子集作为新数组。
join() - 将数组中所有元素连接成一个字符串。
indexOf() - 返回指定值在数组中的第一个匹配项的索引。
lastIndexOf() - 返回指定值在数组中的最后一个匹配项的索引。
includes() - 返回一个布尔值,指示数组是否包含指定的值。
filter() - 使用指定函数测试所有元素,并创建一个包含所有通过测试的元素的新数组。
map() - 对数组中的每个元素调用指定函数,并返回一个新数组。
reduce() - 对数组中的每个元素执行指定的 reducer 函数,将其结果汇总为单个返回值。

需要注意的是,对数组进行浅拷贝和深拷贝也是很重要的概念。浅拷贝会创建一个新的数组,但与原始数组共享相同的引用。而深拷贝则会创建一个完全新的数组,对新数组的修改不会影响原始数组。

相关推荐
土司大王3 小时前
LeetCode hot100——对称二叉树
算法·leetcode·职场和发展
BigTopOne4 小时前
【WebRtc】DTLS-SRTP 加密完整流程详解
前端
sali-tec4 小时前
C# 基于OpenCv的视觉工作流-章106-差值追踪
图像处理·人工智能·opencv·算法·计算机视觉
陈随易4 小时前
pm2 替代品,nodejs&bun 线上部署必备工具
前端·后端·程序员
单线程_014 小时前
从案例分析 Vue3 Tokenizer 源码一
前端·javascript·vue.js
Navigator_Z4 小时前
LeetCode //C - 1208. Get Equal Substrings Within Budget
c语言·算法·leetcode
BigTopOne4 小时前
【WebRtc】-ICE Candidate 与 STUN/TURN 原理详解
前端
l1258654 小时前
# LangGraph Memory机制深度解析:短期记忆与长期记忆的工程实践
前端·人工智能·python·langchain·bootstrap
手写码匠4 小时前
Dify 多 Agent 工具权限与安全沙箱实战:让智能体“有能力,但不越权“
人工智能·深度学习·算法·aigc
黎阳之光4 小时前
打破堆场感知黑盒:黎阳之光视频孪生,构建港口码头网格化透明管控新体系
大数据·人工智能·算法·安全·数字孪生