如何在lodash中删除数组中的对象

Pra*_*kar 3 javascript node.js lodash

我有一个对象数组,我需要根据条件删除一些对象。如何使用lodash映射功能实现它?例如:

[{a: 1}, {a: 0}, {a: 9}, {a: -1}, {a: 'string'}, {a: 5}]
Run Code Online (Sandbox Code Playgroud)

我需要删除

{a: 0}, {a: -1}, {a: 'string'}
Run Code Online (Sandbox Code Playgroud)

我该如何实现?

klu*_*gjo 5

您可以使用lodash的remove函数来实现。它将数组转换就位并返回已删除的元素

var array = [{a: 1}, {a: 0}, {a: 9}, {a: 5}];
var removed = _.remove(array, item => item.a === 0);

console.log(array);
// => [{a: 1}, {a: 9}, {a: 5}]

console.log(removed);
// => [{a: 0}]
Run Code Online (Sandbox Code Playgroud)