天天看點

從JavaScript數組中删除元素一:從JavaScript數組中删除元素

一:從JavaScript數組中删除元素

目錄

  • 一:從JavaScript數組中删除元素
    • 1:使用Splice删除JavaScript中的數組元素
    • 2:使用pop從數組末尾删除元素
    • 3:使用shift從數組的開頭删除元素
    • 4:使用拼接按值删除數組項
    • 5:使用數組過濾器方法按值删除項目
    • 6:使用Delete運算符明确删除數組元素
    • 7:清除或重置JavaScript數組
注意:JavaScript數組沒有remove方法

1:使用Splice删除JavaScript中的數組元素

splice(A,B,C);

A:開始添加或删除元素的位置
B:指定要删除的元素個數
C:參數可選

var arrayList = [1,2,3,4,5,6,7,8,9,0];
var removed = arrayList.splice(1,2);

/**   removed == [1,4,5,6,7,8,9,0]    */
           

2:使用pop從數組末尾删除元素

/**   使用length屬性删除末尾個别元素
		var arrayList = [1,2,3,4,5,6,7,8];
		arrayList.length = 3;
		output:  arrayList = [1,2,3,]
   */

var arrayList = [1,2,3,4,5,6];
arrayList.pop();

/**   arratList==[1,2,3,4,5]   */
           

3:使用shift從數組的開頭删除元素

var arrayList = [1,2,3,4,5,6];
arrayList.shift();

/**   arrayList==[2,3,4,5,6]   */

删除數組第一個元素,其餘元素向下移動。
如果數組長度為空,或者數組長度為0,此方法傳回undefined.
           

4:使用拼接按值删除數組項

// 删除一個5
var arrayList = [1,2,3,4,5,6,7,8,9];
for (var i=0; i<arrayList.length; i++){
	if(arrayList[i]==5){
		arrayList.splice(i,1);
	}
}

/**   arrayList==[1,2,3,4,6,7,8,9]   */
----------------------------------------------------------------
//删除兩個5
var arrayList = [1,2,3,4,5,5,6,7,8,9];
for (var i=0; i<arrayList.length; i++){
	if(arrayList[i]==5){
		arrayList.splice(i,1);
		i--;
	}
}

/**   arrayList==[1,2,3,4,6,7,8,9]   */
           

5:使用數組過濾器方法按值删除項目

var arrayList = [1,2,3,4,5,6,7,8,9];
var newArr = arrayList.filter(value,index,arr){
		return value>6;
}

/**   newArr==[7,8,9];  arrayList==[1,2,3,4,5,6,7,8,9]   */

優點:原始數組陣型不變,傳回一個包含比對值的新數組。
           

6:使用Delete運算符明确删除數組元素

var arrayList = [1,2,3,4,5,6,7,8,9];
delete arrayList[3];
console.log(arrayList);

/**   arrayList==[1,2,3,empty,5,6,7,8,9]   */

delete:釋放元素占用的記憶體。
           

7:清除或重置JavaScript數組

var arrayList = [1,2,3,4,5,6,7,8,9];
1: arrayList.length = 0; // 最簡單
2: arrayList = [];
3: arraList.splice(0, arrayList.length); // 拼接方法
4: while(arrayList.length){ arratList.pop() } // 性能最快
           

繼續閱讀