删除"列的最佳方法"来自使用Lodash的系列?

时间:2015-03-27 05:45:14

标签: javascript arrays underscore.js lodash

我想删除一个或多个"列"使用Lodash从JavaScript中的集合(对象数组)。

例如,在以下集合中:

var users = [
  { 'name': 'barney', 'age': 36, 'alum': true },
  { 'name': 'fred',   'age': 40, 'alum': false }
];

...我可能想要删除所有以字母A开头的列或类似的列。

我知道我可以使用_.omit()方法在每个对象的基础上实现类似的功能,但如果我在each循环中执行此操作,这似乎并不坚持。

使用Lodash的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

  

我知道我可以使用_.omit()方法在每个对象的基础上实现类似的功能,但如果我在each循环中执行此操作,这似乎并不坚持。

因为omit返回一个新对象,而each对数组没有任何作用。

您希望使用map来获取包含新对象的新数组:

users = _.map(users, function(user) {
    return _.omit(user, function(value, key) {
        return key.charAt(0) == "a";
    });
});