splice
方法用於刪除、替換、添加數組中的元素,由於參數較多,使用起來容易混淆
var list = [];
list.push(1);
list.push(2);
list.push(3);
console.log(list); // [1, 2, 3]
// 刪除
list.splice(0, 1); // 刪除 -> 從下標為0開始,長度為1
console.log(list); // [2,3]
list.splice(0, 2); // 刪除 -> 從下標為0開始,長度為2
console.log(list); // []
//替換
list.splice(0, 1, 4); // 替換 -> 從下標為0開始,長度為1的數組元素替換成4
console.log(list); // [4,2,3]
list.splice(0, 2, 4); // 替換 -> 從下標為0開始,長度為2的數組元素替換成4(即4,2整體替換成4)
console.log(list); // [4,3]
//添加
list.splice(1, 0, 5); // 表示在下標為1處添加一項5
console.log(list); // [1,5,2,3]
list.splice(1,0,5,4,3); // 表示在下標為1處依次添加5/4/3三個元素
console.log(list); // [1,5,4,3,2,3]
另外,splice
方法對數組進行操作時,會改變原有數組的結構,並生成一個新的數組
var list = [1,2,3]
// 刪除
var list1 = list.splice(0,1)
console.log(list) // [2,3]
console.log(list1) // [1]
// 替換
var list2 = list.splice(0,1,2)
console.log(list) // [2,2,3]
console.log(list2) // [2]
// 添加
var list3 = list.splice(0,0,3)
console.log(list) // [3,1,2,3]
console.log(list3) // []
可以看到,splice
方法改變了原有數組list,並且會直接生成一個新數組,而且執行刪除、替換、添加操作時,生成的新數組又稍有不同。
綜上,splice
方法很靈活,功能點比較多,使用的好可以對數組的處理得心應手。