1. 程式人生 > 其它 >JavaScript基礎學習-集合操作splice

JavaScript基礎學習-集合操作splice

splice(刪除的第一個元素的位置,要刪除的元素數量,插入的元素1,插入的元素2,。。。)
例:

  • 刪除。需要給splice()傳2 個引數:要刪除的第一個元素的位置和要刪除的元素數量。可以從陣列中刪除任意多個元素,比如splice(0, 2)會刪除前兩個元素。
  • 插入。需要給splice()傳3 個引數:開始位置、0(要刪除的元素數量)和要插入的元素,可以在陣列中指定的位置插入元素。
    第三個引數之後還可以傳第四個、第五個引數,乃至任意多個要插入的元素。比如,splice(2, 0, "red", "green")會從陣列位置2 開始插入字串"red"和"green"。
  • 替換。splice()在刪除元素的同時可以在指定位置插入新元素,同樣要傳入3 個引數:開始位置、要刪除元素的數量和要插入的任意多個元素。要插入的元素數量不一定跟刪除的元素數量
    一致。比如,splice(2, 1, "red", "green")會在位置2 刪除一個元素,然後從該位置開始向陣列中插入"red"和"green"。

splice()方法始終返回這樣一個數組,它包含從陣列中被刪除的元素(如果沒有刪除元素,則返回空陣列)。以下示例展示了上述3 種使用方式。

--刪除
let colors = ["red", "green", "blue"];
let removed = colors.splice(0,1); // 刪除第一項
alert(colors); // green,blue
alert(removed); // red,只有一個元素的陣列
--插入
removed = colors.splice(1, 0, "yellow", "orange"); // 在位置1 插入兩個元素
alert(colors); // green,yellow,orange,blue
alert(removed); // 空陣列
--更新
removed = colors.splice(1, 1, "red", "purple"); // 插入兩個值,刪除一個元素
alert(colors); // green,red,purple,orange,blue
alert(removed); // yellow,只有一個元素的陣列