刪除方法:1、用shift()刪除第一個(gè)元素,語(yǔ)法“arr.shift()”;2、用pop()刪除最后一個(gè)元素,語(yǔ)法“arr.pop()”;3、用splice()根據(jù)下標(biāo)刪除任意元素,語(yǔ)法“arr.splice(開(kāi)始下標(biāo),刪除元素個(gè)數(shù))”。
本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。
在JavaScript中,刪除數(shù)組元素有多種方法,下面給大家介紹一些。
方法1:使用shift()函數(shù)刪除第一個(gè)數(shù)組元素
array.shift()函數(shù)可以把數(shù)組的第一個(gè)元素從其中刪除,并返回第一個(gè)元素的值;然后將余下所有元素前移 1 位,以填補(bǔ)數(shù)組頭部的空缺。
var a = [1,2,3,4,5,6,7,8]; //定義數(shù)組 a.shift(); console.log(a);
輸出結(jié)果為:
可以看出:上例使用a.shift()來(lái)刪除a數(shù)組開(kāi)頭的數(shù)值1,然后會(huì)重置索引(重新從0開(kāi)始);且shift()方法會(huì)改變?cè)瓟?shù)組,修改數(shù)組的長(zhǎng)度!因此使用console.log(a)
來(lái)輸出原數(shù)組,顯示的是已經(jīng)被刪除開(kāi)頭元素的數(shù)組。
方法2:使用pop()刪除最后一個(gè)數(shù)組元素
array.pop()方法可以刪除數(shù)組 array 中最后一個(gè)元素,并返回被刪除的元素。
var a = [1,2,3,4,5,6,7,8]; //定義數(shù)組 a.pop(); console.log(a)
輸出結(jié)果為:
可以看出:上例使用a.pop()
來(lái)刪除a數(shù)組末尾的數(shù)值8,然后會(huì)重置索引(重新從0開(kāi)始);且pop()方法也會(huì)改變?cè)瓟?shù)組,修改數(shù)組的長(zhǎng)度!
方法3:使用 splice() 根據(jù)數(shù)組下標(biāo)刪除任意元素
使用splice()可以從指定下標(biāo)位置開(kāi)始刪除一個(gè)或多個(gè)元素。
刪除元素的語(yǔ)法:
array.splice(index,howmany)
-
第1個(gè)參數(shù)
index
可以指定起始下標(biāo)位置(即開(kāi)始刪除元素的位置); -
第2個(gè)參數(shù)
howmany
指定應(yīng)該刪除的元素?cái)?shù)目(即需要?jiǎng)h除的一個(gè)或多個(gè)元素)。
我們通過(guò)下面的例子來(lái)具體看看:
var arr= [1,2,3,4,5]; console.log(arr); arr.splice(1,2); console.log(arr);
可以看出:使用arr.splice(1,2)
從下標(biāo)1的位置(數(shù)組第2個(gè)元素)開(kāi)始刪除2個(gè)元素,也就是刪除了arr[1]
和arr[2]
,因此輸出結(jié)果為:
利用splice() 方法我們也可以實(shí)現(xiàn)在數(shù)組開(kāi)頭和末尾刪除元素的操作:
-
如果想要在數(shù)組開(kāi)頭刪除元素,就設(shè)置該方法第1個(gè)參數(shù)index的值為0即可
var arr= [1,2,3,4,5]; console.log(arr); arr.splice(0,2); console.log(arr);
-
如果想要在數(shù)組末尾刪除元素,就設(shè)置該方法第1個(gè)參數(shù)index的值為負(fù)數(shù),那么就會(huì)按絕對(duì)值從數(shù)組右側(cè)開(kāi)始向左側(cè)定位;且第2個(gè)參數(shù) howmany的值要 等于 index的值。
var arr= [1,2,3,4,5]; console.log(arr); //從倒數(shù)第二個(gè)元素開(kāi)始,截取兩個(gè)元素 arr.splice(-2,2); console.log(arr);
【