JavaScript splice 基本語法
array.splice( Index , 數量 , 插入的新元素一 , 插入的新元素二 ... )
語法將 array 後直接加上 splice 即可對陣列進行修改,小括號內的第一個參數 Index 代表要從哪個 array 元素開始刪除或插入,也就是起始的索引值,參數值為數字,且為必填項目,第二個參數是"數量",所代表的意思則是要刪除或插入的新元素數量,也是必填項目,但可以為 0,代表不刪除任何元素,第三個參數之後的所有參數,都是要加入陣列的新元素,自訂項目。
JavaScript splice 修改陣列元素範例一、不刪除任何元素並插入兩個新元素
<script type="text/javascript">
var NewArray = new Array(4);
NewArray[0] = "A";
NewArray[1] = "B";
NewArray[2] = "C";
NewArray[3] = "D";
document.write('修改前: '+NewArray+'<br>');
NewArray.splice(1,0,"X","Y");
document.write('修改後: '+NewArray+'<br>');
</script>
輸出結果如var NewArray = new Array(4);
NewArray[0] = "A";
NewArray[1] = "B";
NewArray[2] = "C";
NewArray[3] = "D";
document.write('修改前: '+NewArray+'<br>');
NewArray.splice(1,0,"X","Y");
document.write('修改後: '+NewArray+'<br>');
</script>
修改前: A,B,C,D
修改後: A,X,Y,B,C,D
修改後: A,X,Y,B,C,D
範例一開始先宣告一個新的陣列 NewArray,共有 4 個陣列值,我們要透過 splice 函式,從陣列的第二個位置,開始插入 X、Y 這兩的新的元素,且不刪除任何一個原本的陣列元素,所以輸出結果 A 與 B 之間被插入了 X,Y。從範例中的 splice 第一個參數 Index 設為 1,實際代表的意思是從第二個元素開始處理,如果要從第一個元素開始,則 Index 必須設為 0。第二個參數我們設為 0,代表不刪除任何原本的參數,直接將 X 與 Y 插入陣列中的第二個位置就對了。
JavaScript splice 修改陣列元素範例二、刪除兩個元素並插入兩個新元素
<script type="text/javascript">
var NewArray = new Array(4);
NewArray[0] = "A";
NewArray[1] = "B";
NewArray[2] = "C";
NewArray[3] = "D";
document.write('修改前: '+NewArray+'<br>');
NewArray.splice(1,2,"X","Y");
document.write('修改後: '+NewArray+'<br>');
</script>
輸出結果如var NewArray = new Array(4);
NewArray[0] = "A";
NewArray[1] = "B";
NewArray[2] = "C";
NewArray[3] = "D";
document.write('修改前: '+NewArray+'<br>');
NewArray.splice(1,2,"X","Y");
document.write('修改後: '+NewArray+'<br>');
</script>
修改前: A,B,C,D
修改後: A,X,Y,D
修改後: A,X,Y,D
這個範例與第一個範例最大的差異就在於 splice 的第二個參數設為 2,這代表 splice 會將從第二個元素開始刪除兩個元素,並將 X,Y 插入該位置,所以輸出結果可以看到 B 與 C 被刪除了,改成 X 與 Y,這就是 JavaScript splice 函式的主要功能。
推薦給您的延伸閱讀