JavaScript 陣列新增或者刪除元素

admin發表於2018-11-01

本文介紹一下JavaScript如何新增或者刪除陣列中的元素。

刪除和新增陣列元素方式有多種,分別如下:

(1).陣列首尾刪除或者新增元素。

(2).在陣列任意位置新增元素或者刪除任意位置的元素。

一.新增陣列元素:

(1).在陣列元素結尾追加一個元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
arr.push(5);
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/014559t5a88jaj05o50s01.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

成功在陣列結尾追加數字5,更多內容參閱JavaScript push()一章節。

(2).在陣列元素起始位置新增一個元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
arr.unshift(0);
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/014646tz0yvevyz55z8t5v.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

成功在陣列起始位置新增數字0,更多內容參閱JavaScript unshift()一章節。

(3).在任意位置插入元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
Array.prototype.insert=function(index,item){
  this.splice(index,0,item);
}; 
arr.insert(2,10);
console.log(arr)

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/014742gefm3ttcafttn3zq.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述程式碼可以在陣列索引位置2處插入數字10。程式碼分析如下:

(1).陣列物件自身並沒有insert方法,所以在建構函式Aarry原型之上自定義此方法。

(2).實現此功能的關鍵在於對splice的理解,簡單的說,此方法可以從指定位置開始使用新元素替換指定數量陣列元素,比如splice(index,0,item),就是從index位置開始,使用新元素item替換0個陣列元素,也就是在index位置插入新元素。

相關閱讀:

(1).關於splice方法具體用法參閱JavaScript splice()一章節。

(2).關於prototype具體用法參閱JavaScript prototype 原型一章節。

二.刪除陣列元素:

(1).刪除陣列結尾元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
arr.pop();
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/014848coox8va8ezzx19zc.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

成功將陣列最後一個元素刪除,更多內容可以參閱JavaScript pop()一章節。

(2).刪除陣列起始元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
arr.shift();
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/014954xpfzpced2ppdwffw.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

成功將陣列第一個元素刪除,更多內容可以參閱JavaScript shift()一章節。

(3).刪除陣列中任意元素:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr=[1,2,3,4];
Array.prototype.delete=function(index){
  this.splice(index,1);
}; 
arr.delete(2);
console.log(arr)

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201811/01/015041s98sgh7l12hdgs0g.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上面程式碼可以刪除索引為2的陣列元素,也就是刪除陣列的第三個元素。

關鍵還是對splice方法的理解,這裡不多介紹,具體參閱相關文章即可。

相關文章