splice()
是 JavaScript 中数组的一个非常有用的方法,它允许你添加、删除或替换数组中的元素。这个方法会改变原始数组,并返回被删除的元素组成的新数组。
array.splice(start, deleteCount, item1, item2, ...);
start
:必需。整数,规定添加/删除项目的位置,使用负数可从数组尾部开始计算位置。deleteCount
:必需。要删除的项目数量。如果设置为 0,则不会删除项目,只会在指定位置添加新元素。item1, item2, ...
:可选。向数组添加的新项目。splice()
方法返回一个由被删除元素组成的新数组。如果没有删除任何元素,则返回一个空数组。
let fruits = ["apple", "banana", "cherry", "durian", "elderberry"];
// 删除 "cherry" 和 "durian"
let removedFruits = fruits.splice(2, 2);
console.log(fruits); // ["apple", "banana", "elderberry"]
console.log(removedFruits); // ["cherry", "durian"]
// 在位置 2 添加 "citrus" 和 "date"
fruits.splice(2, 0, "citrus", "date");
console.log(fruits); // ["apple", "banana", "citrus", "date", "elderberry"]
// 替换 "banana" 为 "blueberry"
fruits.splice(1, 1, "blueberry");
console.log(fruits); // ["apple", "blueberry", "citrus", "date", "elderberry"]
splice()
方法改变了原始数组:这是 splice()
的一个特性,如果你不希望改变原始数组,可以使用其他方法如 slice()
或展开运算符 ...
来创建一个新的数组副本,然后在新数组上进行操作。start
参数时,或者当 start
参数超出数组长度时,可能会导致意外的结果。确保你理解了 splice()
方法如何处理这些情况,并始终检查你的索引值是否正确。deleteCount
:如果你只想添加元素而不删除任何元素,但忘记了将 deleteCount
设置为 0,那么 splice()
方法会从指定位置开始删除所有后续元素。始终明确指定你想要删除的元素数量。没有搜到相关的沙龙