JS中splice添加或刪除數(shù)組元素
語法
array.splice(index,howmany,item1,…,itemX)
參數(shù)說明
| 參數(shù) | 描述 |
|---|---|
| index | 必需。規(guī)定從何處添加/刪除元素。 該參數(shù)是開始插入和(或)刪除的數(shù)組元素的下標,必須是數(shù)字。 |
| howmany | 可選。規(guī)定應(yīng)該刪除多少元素。必須是數(shù)字,但可以是 “0”。 如果未規(guī)定此參數(shù),則刪除從 index 開始到原數(shù)組結(jié)尾的所有元素。 |
| item1,…,itemX | 可選。要添加到數(shù)組的新元素 |
返回值說明
| Type | 描述 |
|---|---|
| Array | 如果從arrayObject中刪除了元素,則返回的是含有被刪除的元素的數(shù)組。 |
下標問題
第一個參數(shù)index是數(shù)組的下標,因為index是整數(shù),整數(shù)包括正數(shù)、負數(shù)和0,所以就需要理解清楚正數(shù)的時候下標是怎么排的,負數(shù)的時候下標是怎么排的,這樣寫代碼的時候就不會迷糊了(不要問我為什么這么說??)。
在網(wǎng)上沒有找到相關(guān)資料說明splice的下標是怎么搞得,沒辦法那就只能自己研究了,功夫不負有心人,經(jīng)過一番努力終于搞明白了??。
下標排序方式如下:

實戰(zhàn)
splice(index)
從index的位置開始,刪除之后的所有元素(包括第index個)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(1);
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相

splice(index,howmany)
刪除從index位置開始的數(shù),howmany為刪除的個數(shù),當howmany≤0時不會刪除任何元素。
示例一(howmany>0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(1, 2);
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相:

示例二(howmany ≤ 0)
howmany≤0就是不刪除howmany≤0就是不刪除howmany≤0就是不刪除
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(1, 0);
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)

splice(index,howmany,item1,…,itemX)
howmany ≤ 0
howmany≤0就是不刪除howmany≤0就是不刪除howmany≤0就是不刪除在index位置按順序依次添加item1,…,itemX
示例一(index ≥ 0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(1, 0, 'Grape', 'Pear');
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相

示例二(index<0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(-1, 0, 'Grape', 'Pear');
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相

howmany>0
先從index位置(包含index)開始刪除howmany個元素,然后在index位置按順序依次添加item1,…,itemX
示例一(index ≥ 0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(1, 1, 'Grape', 'Pear');
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相(藍框標出的是添加的元素,橙框標出的是刪除的元素)

示例二(index<0)
let array = ['Banana', 'Orange', 'Apple', 'Mango']
console.log('原數(shù)組:', array)
let splice = array.splice(-2, 2, 'Grape', 'Pear');
console.log('操作后數(shù)組:', array)
console.log('變動內(nèi)容', splice)
有圖有真相(藍框標出的是添加的元素,橙框標出的是刪除的元素)

到此這篇關(guān)于JS中splice添加或刪除數(shù)組元素的文章就介紹到這了,更多相關(guān)JS splice添加刪除數(shù)組元素內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript模擬select,jselect的方法實現(xiàn)
由于主流瀏覽器對select元素渲染不同,所以在每種瀏覽器下顯示也不一樣,最主要的是默認情況下UI太粗糙,即使通過css加以美化也不能達到很美觀的效果2012-11-11
原生JavaScript實現(xiàn)頁面滾動監(jiān)聽的方法步驟
滾動監(jiān)聽事件一般網(wǎng)頁中的返回頂部按鈕都是通過滾動監(jiān)聽事件來實現(xiàn)的,本文給大家介紹了原生JavaScript實現(xiàn)頁面滾動監(jiān)聽的方法步驟,文中通過代碼示例講解的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2025-03-03
javascript 傳統(tǒng)事件模型構(gòu)造的事件監(jiān)聽器實現(xiàn)代碼
最近做東西需要添加大量的事件,而且要對所有事件進行比較細致的控制,于是便試著寫了個事件監(jiān)聽器。2010-05-05
JavaScript獲取頁面中表單(form)數(shù)量的方法
這篇文章主要介紹了JavaScript獲取頁面中表單(form)數(shù)量的方法,涉及javascript操作表單document.forms數(shù)組的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04

