JavaScript 从数组中删除项的不同方法

JavaScript 从数组中删除项的不同方法

在Javascript中,我们没有任何array.remove()方法来删除元素。代替使用任何方法,Javascript有不同的方法来从数组中删除项。

在本文中,我们将看到使用Javascript从数组中删除项的不同方法。

  • 使用for循环和push方法
  • 使用pop()方法
  • 使用shift()方法
  • 使用splice()方法
  • 使用filter()方法
  • 使用delete运算符
  • 使用Lodash _.remove()方法

注意: 还有一些由JavaScript内置方法创建的其他方法。

方法1:使用for循环和push()方法

这种方法不会改变原始数组。首先,您需要创建一个空的数组,然后循环遍历新数组,并只推送您想要的元素。

示例:

Javascript

let arr = ['gfg', 'GFG', 'g', 'GeeksforGeeks'];
const arrayWithoutGFG = [];
 
for (let i = 0; i < arr.length; i++) {
    if (arr[i] !== 'GFG') {
        arrayWithoutGFG.push(arr[i]);
    }
}
// arr is same
console.log(arr);
console.log(arrayWithoutGFG);

输出

[ 'gfg', 'GFG', 'g', 'GeeksforGeeks' ]
[ 'gfg', 'g', 'GeeksforGeeks' ]

方法2:使用pop()方法

这个方法用于删除数组的最后一个元素并将删除的项作为输出返回。删除元素会减少数组的长度。

示例: 在这个例子中,pop()方法被用来删除数组的元素。

Javascript

function myFunc() {
    let arr = ['gfg', 'GFG', 'g', 'GeeksforGeeks'];
    let name = arr.pop();
    console.log(name);
    console.log(arr.length)
}
myFunc();

输出

GeeksforGeeks
3

方法3:使用 shift() 方法

此方法用于删除数组的第一个元素。此方法用于返回数组的第一个元素。它还会减少原始数组的长度。

示例: 在此示例中,使用 shift() 方法删除数组的第一个元素。

JavaScript

function myFunc() {
    let arr = ['gfg', 'GFG', 'g', 'GeeksforGeeks'];
    let name = arr.shift();
    console.log(name);
    console.log(arr.length)
}
myFunc();

输出

gfg
3

方法4:使用splice()方法

此方法用于删除现有元素或通过删除/添加新元素来替换数组的内容。

示例: 在此示例中,splice方法将用于从数组中删除项目。

Javascript

function myFunc() {
    let myFruit = ["apple", "banana", "grapes", "strawberry"];
    const removed = myFruit.splice(2, 2, "guava");
     
    // Removed element in the array
    console.log(removed);    
 
    // Length of the original array after deleting
    console.log(myFruit.length); 
 
    // Original array after deleting the array
    console.log(myFruit);     
}
myFunc();

输出

[ 'grapes', 'strawberry' ]
3
[ 'apple', 'banana', 'guava' ]

方法5: 使用filter()方法

该方法返回一个新的数组。只有满足函数条件的数组元素传递给新数组。该方法不会改变原始数组。

示例: 在这个示例中,我们将使用filter()方法从数组中删除一个元素。

Javascript

const arr = [2, 7, 9, 15, 19];
 
function isPrime(n) {
    for (let i = 2; n > i; i++) {
        if (n % i === 0) {
            return false;
        }
    }
    return n > 1;
}
 
console.log(arr.filter(isPrime));

输出

[ 2, 7, 19 ]

方法6:使用 delete 操作符

这个操作符更具体地用于删除JavaScript对象的属性。

示例: 在这个示例中,我们将使用JavaScript的delete操作符来从数组中删除项目。

Javascript

const arr = [2, 7, 9, 15, 19];
delete arr[3];
console.log(arr);

输出

[ 2, 7, 9, <1 empty item>, 19 ]

方法7:使用 Lodash _.remove() 方法

_.remove() 方法用于从数组中移除谓词函数返回为真的所有元素,并返回被移除的元素。

安装步骤:

npm install lodash

例子:

JavaScript

const _ = require("lodash"); 
let arr = [1, 2, 3, 4, 5];
let even = _.remove(arr, function (n) {
    return n % 2 == 0;
});
 
console.log('Original Array ', arr);
console.log('Removed element array ', even);

输出:

Original Array  [ 1, 3, 5 ]
Removed element array  [ 2, 4 ]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程