JavaScript 從陣列中刪除索引
-
使用
splice()
函式從 JavaScript 陣列中刪除特定元素 -
使用
Array.filter()
從 JavaScript 陣列中刪除特定元素 -
使用
Underscore.js
庫從 JavaScript 陣列中刪除特定元素 -
使用
Lodash
庫從 JavaScript 陣列中刪除特定元素
本教程講授如何從 JavaScript 中的陣列中刪除特定元素。
使用 splice()
函式從 JavaScript 陣列中刪除特定元素
splice()
方法可以通過新增/刪除元素來修改陣列的內容。它採用以下 3 個引數:
index
:一個整數值,指定要新增/刪除元素的位置。我們甚至可以使用負索引從陣列的後面指定一個索引。howmany
:這是一個可選引數。它指定將從陣列中刪除多少個專案。如果將其設定為0
,則不會刪除任何專案。item1, item2, ... ,itemx
:要新增到陣列中的元素。
const array = [1, 2, 3, 4, 5];
const index = array.indexOf(3);
if (index > -1) {
array.splice(index, 1);
}
console.log(array);
輸出:
[1, 2, 4, 5]
在上面的程式碼中,我們首先找到要刪除的元素的索引,然後使用 splice()
方法刪除陣列元素。
使用 Array.filter()
從 JavaScript 陣列中刪除特定元素
filter
方法迴圈遍歷陣列並濾除滿足特定給定條件的元素。我們可以使用它刪除目標元素並保留其餘元素。它有助於我們同時刪除多個元素。
var toRemove = 1;
var arr = [1, 2, 3, 4, 5];
arr = arr.filter(function(item) {
return item !== toRemove
});
console.log(arr)
輸出:
[2, 3, 4, 5]
我們使用 filter
函式來保留每個不等於要刪除的元素的元素,並將新形成的陣列分配給原始陣列。
使用 Underscore.js
庫從 JavaScript 陣列中刪除特定元素
Underscore.js
是一個非常有用的庫,它為我們提供了許多有用的功能,而無需擴充套件任何內建物件。要從 JavaScript 陣列中刪除目標元素,我們必須使用 without()
函式。此函式返回陣列的副本,其中刪除了目標元素的所有副本。
const arr = [1, 2, 1, 0, 3, 1, 4];
arr = _.without(arr, 0, 1);
console.log(arr);
輸出:
[2, 3, 4]
在上面的程式碼中,我們將陣列和要刪除的元素 0
和 1
傳遞給了 without
函式。它返回一個刪除了這些元素的新陣列,我們將其再次儲存在 arr
中。
使用 Lodash
庫從 JavaScript 陣列中刪除特定元素
Lodash
是一個很棒的庫,它允許我們僅匯入所需的函式,而不匯入完整的庫。它有一個名為 remove()
的函式,可以從陣列中刪除一個特定的元素。該函式採用陣列,並檢查與要從陣列中刪除的元素相匹配的條件。
var arr = [1, 2, 3, 4];
var greater = _.remove(arr, function(n) { return n > 2;});
console.log(arr)
輸出:
[1,2]
在上面的程式碼中,我們將陣列和一個函式檢查元素是否大於 2
傳遞給 lodash
庫的 remove
函式。它從陣列中刪除所有大於 2
的元素。
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn