js 数组 push() pop() shift() unshift() splice() sort() reverse() 的这些方法的用法
JavaScript 的数组对象提供了多种方法来操作数组内容。以下是您提到的方法的简要说明和用法:
1. `push()`
- 用途:向数组的末尾添加一个或多个元素,并返回新的长度。
- 语法:`array.push(element1, ..., elementN)`
- 示例:`let arr = [1, 2, 3]; arr.push(4); // arr is now [1, 2, 3, 4]`
2. `pop()`
- 用途:移除数组的最后一个元素,返回该元素。如果数组为空,则返回 `undefined`。
- 语法:`array.pop()`
- 示例:`let arr = [1, 2, 3]; let last = arr.pop(); // last is 3, arr is now [1, 2]`
3. `shift()`
- 用途:移除数组的第一个元素,返回该元素。所有其他元素的索引都会减一。
- 语法:`array.shift()`
- 示例:`let arr = [1, 2, 3]; let first = arr.shift(); // first is 1, arr is now [2, 3]`
4. `unshift()`
- 用途:在数组的开头添加一个或多个元素,并返回新的长度。
- 语法:`array.unshift(element1, ..., elementN)`
- 示例:`let arr = [2, 3]; arr.unshift(1); // arr is now [1, 2, 3]`
5. `splice()`
- 用途:可以用来添加/移除项目,是一个非常多功能的方法。它可以改变原始数组。
- 语法:`array.splice(start, deleteCount, item1, ..., itemX)`
- `start` 表示开始修改的位置。
- `deleteCount` 是可选参数,表示要移除的元素数量。如果不指定,则会删除从 `start` 到数组末尾的所有元素。
- `item1, ..., itemX` 是可选参数,表示要添加到数组的新元素。
- 示例:
- 添加元素:`let arr = [1, 3, 4]; arr.splice(1, 0, 2); // arr is now [1, 2, 3, 4]`
- 移除元素:`arr.splice(2, 1); // arr is now [1, 2, 4]`
- 替换元素:`arr.splice(1, 1, 'a'); // arr is now [1, 'a', 4]`
6. `sort()`
- 用途:对数组元素进行排序,默认按照字符串的Unicode码点排序。可以提供比较函数来自定义排序方式。
- 语法:`array.sort([compareFunction])`
- 示例:
- 默认排序:`let arr = [1, 30, 4, 21]; arr.sort(); // arr is now [1, 21, 30, 4]`
- 使用比较函数:`arr.sort((a, b) => a - b); // 数字升序排序`
7. `reverse()`
- 用途:颠倒数组中元素的顺序。第一个元素变成最后一个,最后一个变成第一个。
- 语法:`array.reverse()`
- 示例:`let arr = [1, 2, 3]; arr.reverse(); // arr is now [3, 2, 1]`
请注意,除了 `sort()` 和 `reverse()` 可以创建新数组而不改变原数组外,上述其他方法都会直接修改(即“破坏性地”)原数组。如果您想保持原数组不变,可以在调用这些方法之前复制数组。例如,使用 `slice()` 方法可以创建一个浅拷贝。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2021-01-23 前端常用设计模式