使用 Lodash 从集合中删除 "column" 的最佳方法?

Best way to remove a "column" from a collection using Lodash?

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

例如,在以下集合中:

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

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

我知道我可以使用 _.omit() 方法在每个对象的基础上实现类似的东西,但如果我在 each 循环中这样做,这似乎并不适用。

使用 Lodash 解决此问题的最佳方法是什么?

I know that I can achieve something similar on a per-object basis using the _.omit() method, but this does not seem to stick if I do it in an each loop.

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

您想使用 map 获取包含新对象的新数组:

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