改变原数组的9个方法

本文介绍了JavaScript中的九种数组操作方法:splice用于增删元素,reverse改变元素顺序,fill设置数组值,copyWithin复制元素,sort排序,push添加元素,pop删除末尾,unshift添加开头,shift移除开头。这些方法是开发中处理数组常用的技术。

1. splice()

可从数组中添加/删除数据

在这里插入图片描述

2. reverse()

颠倒数组中元素的顺序

在这里插入图片描述

3. fill()

可将数组中所有元素都设为相同的值

在这里插入图片描述

4. copyWithin()

从数组的指定位置拷贝元素到数组的另一个指定位置中

在这里插入图片描述

5. sort()

按照字典序来排顺序

在这里插入图片描述

6. push()

向数组末尾添加一个或者多个元素,从而扩展数组

在这里插入图片描述

7. pop()

删除数组末尾数据

在这里插入图片描述

8. unshift()

向数组开头添加一个或者多个元素,从而扩展数组

在这里插入图片描述

9. shift()

删除数组开头的元素

在这里插入图片描述

JavaScript 中,有一些数组方法会直接修改数组,这些方法也被称为“变异方法”(mutator methods)。以下是常见的会改变数组方法及其功能描述: ### 常见修改数组数组方法 #### `push()` 向数组的末尾添加一个或多个元素,并返回新的长度。 ```javascript const arr = [1, 2, 3]; arr.push(4); // arr 变为 [1, 2, 3, 4] ``` #### `pop()` 删除数组的最后一个元素,并返回该元素。 ```javascript const arr = [1, 2, 3]; const last = arr.pop(); // arr 变为 [1, 2] ``` #### `shift()` 删除数组的第一个元素,并返回该元素。 ```javascript const arr = [1, 2, 3]; const first = arr.shift(); // arr 变为 [2, 3] ``` #### `unshift()` 向数组的开头添加一个或多个元素,并返回新的长度。 ```javascript const arr = [1, 2, 3]; arr.unshift(0); // arr 变为 [0, 1, 2, 3] ``` #### `splice()` 可以用于删除或添加数组中的元素。它接受至少三个参数:起始索引、删除个数和可选的新元素列表。 ```javascript const arr = [1, 2, 3, 4]; arr.splice(2, 1, 5); // arr 变为 [1, 2, 5, 4] ``` #### `reverse()` 反转数组中元素的顺序,并返回反转后的数组。 ```javascript const arr = [1, 2, 3]; arr.reverse(); // arr 变为 [3, 2, 1] ``` #### `sort()` 对数组的元素进行排序,默认按字符串顺序排序,但可以通过提供比较函数自定义排序规则。 ```javascript const arr = [3, 1, 2]; arr.sort(); // arr 变为 [1, 2, 3] ``` #### `fill()` 用一个固定值填充数组中从起始索引到终止索引(不包括)的全部元素。 ```javascript const arr = [1, 2, 3, 4]; arr.fill(0, 1, 3); // arr 变为 [1, 0, 0, 4] ``` #### `copyWithin()` 将数组中的一部分复制到同一数组中的另一个位置,并覆盖有元素,返回修改后的数组。 ```javascript const arr = [1, 2, 3, 4, 5]; arr.copyWithin(0, 3); // arr 变为 [4, 5, 3, 4, 5] ``` 这些方法直接修改数组,因此在使用时需要注意对数据状态的影响。如果需要保持数组不变,可以先通过 `slice()` 或展开运算符 `...` 创建副本再操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值