定义和用法

splice () 方法向 / 从数组中添加 / 删除项目,然后返回被删除的项目

注释:方法会改变原始数组

语法

1
arrayObject.splice(index,howmany,item1,.....,itemX)
参数 描述
index 必需。整数,规定添加 / 删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, …, itemX 可选。向数组添加的新项目。替换到删除的位置,如果指定了位置,但 howmany为 0,则新增项占据该位置

返回值

类型 描述
Array 删除的数组,如果有的话

说明

splice () 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。

示例

从指定索引位置开始删除,一直删到最后

1
2
3
4
5
let arr = ["hello", "world", "123"];
arr.splice(1) //从索引 1 位置开始删除
(2) ["world", "123"] //返回删除的内容
arr
["hello"] //目前 arr 的值

从指定索引位置开始删除,删除指定数量元素

1
2
3
4
5
let arr = ["hello", "world", "123"];
arr.splice(1, 1) //从索引 1 位置开始删除,删除 1 个
["world"] //返回删除的内容
arr
["hello", "123"] //目前 arr 的值

从指定索引位置开始删除,删除指定数量元素,然后添加元素

1
2
3
4
5
6
7
8
9
10
11
12
let arr = ["hello", "world", "123"];
arr.splice(2, 1, "456") //从索引 2 位置开始删除,删除 1 个元素,添加 1 个元素
["123"] //返回删除的内容
arr
["hello", "world", "456"] //目前 arr 的值


let arr = ["hello", "world", "123"];
arr.splice(2, 0, "456", "789") //从索引 2 位置开始删除,删除 0 个元素,添加 1 个元素
[] //返回删除的内容
arr
["hello", "world", "456", "789", "123"] //目前 arr 的值