在 JavaScript 中,Array.toSpliced() 方法用于通过删除或替换现有元素和/或添加新元素来修改数组。此方法类似于 JavaScript Array.splice() 方法。
toSpliced() 方法修改多个数组元素:它从数组中删除给定数量的元素,从给定的索引开始,然后在同一索引处插入给定的元素。此方法不会修改/覆盖原始数组;相反,它会返回一个新数组。
语法
以下是 JavaScript Array.toSpliced() 方法的语法 -
toSpliced(start, deleteCount, item1, item2, ..., itemN)
参数
此方法采用以下参数 -
- start - 开始更改数组的索引。
- deleteCount(可选)− 要删除的元素数。如果省略或 0,则不会删除任何元素。
- item1, item2, ...,itemN (可选) - 要添加到数组 start 索引处的元素。
返回值
此方法返回一个包含修改后的元素的新数组。
示例 1
在下面的示例中,我们使用 JavaScript Array.toSpliced() 方法删除所有数组元素,从索引位置 2 开始。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2);
document.write(result);
</script>
</body>
</html>
执行程序后,索引位置 2 中的所有元素都将被删除。
输出
示例 2
如果 toSpliced() 方法的 'deleteCount' 参数为 0,则不会从 animals 数组中删除任何元素。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 0);
document.write(result);
</script>
</body>
</html>
输出
正如我们所看到的,没有元素从数组中删除。
示例 3
下面的程序删除索引位置 2 之前的 0(零)个元素,并插入新元素 “Pineapple”。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 0, "Pineapple");
document.write(result);
</script>
</body>
</html>
输出
正如我们所看到的,元素 “Pineapple”入到索引位置 2 处,而没有删除任何现有的元素。
示例 4
以下程序删除索引位置 2 之前的 0(零)元素,并插入两个新元素,即 “Pineapple” 和 “Grapes”。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 0, "Pineapple", "Grapes");
document.write(result);
</script>
</body>
</html>
元素 “Pineapple” 和 “Grapes”入到索引位置 2 处,而不删除任何现有元素。
输出
示例 5
在以下示例中,我们将从索引位置 2 开始删除 2 个元素。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 2);
document.write(result);
</script>
</body>
</html>
执行程序后,它从数组中删除了 “cherry” 和 “dates”。
输出
示例 6
在这里,我们在索引位置 2 处删除了 1 个元素,并插入了一个新元素 “Grapes”。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 1, "Grapes");
document.write(result);
</script>
</body>
</html>
执行程序后,元素 “cherry” 将被删除,“Grapes” 将入到该索引中。
输出
示例 7
在此示例中,我们将删除索引位置 2 处的 1 个元素,并插入两个新元素 “Grapes” 和 “Pineapple”。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(2, 1, "Grapes", "Pineapple");
document.write(result);
</script>
</body>
</html>
执行程序后,元素 “cherry” 将被删除,元素 “Grapes” 和 “Pineapple” 将入。
输出
示例 8
在这里,我们从索引 -2 中删除 1 个元素(从数组末尾开始的计数)。
执行程序后,元素 “cherry” 将被删除。
输出
示例 9
在这里,我们从索引 -2 中删除 1 个元素(从数组末尾开始的计数),并插入两个新元素 “Pineapple” 和 “Grapes”。
<html>
<body>
<script>
let fruits = ['apple', 'banana', 'cherry', 'dates'];
let result = fruits.toSpliced(-2, 1);
document.write(result);
</script>
</body>
</html>
执行程序后,元素 “cherry” 将被删除,而 “Pineapple” 和 “Grapes” 将被删除。
输出