JavaScript 從陣列中刪除索引

Harshit Jindal 2023年1月30日 2021年4月29日
  1. 使用 splice() 函式從 JavaScript 陣列中刪除特定元素
  2. 使用 Array.filter() 從 JavaScript 陣列中刪除特定元素
  3. 使用 Underscore.js 庫從 JavaScript 陣列中刪除特定元素
  4. 使用 Lodash 庫從 JavaScript 陣列中刪除特定元素
JavaScript 從陣列中刪除索引

本教程講授如何從 JavaScript 中的陣列中刪除特定元素。

使用 splice() 函式從 JavaScript 陣列中刪除特定元素

splice() 方法可以通過新增/刪除元素來修改陣列的內容。它採用以下 3 個引數:

  1. index:一個整數值,指定要新增/刪除元素的位置。我們甚至可以使用負索引從陣列的後面指定一個索引。
  2. howmany:這是一個可選引數。它指定將從陣列中刪除多少個專案。如果將其設定為 0,則不會刪除任何專案。
  3. 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]

在上面的程式碼中,我們將陣列和要刪除的元素 01 傳遞給了 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 avatar Harshit Jindal avatar

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

相關文章 - JavaScript Array