Lodash从对象列表中删除除一个属性之外的所有属性

Cli*_*ick 2 javascript lodash

是否有一个lodash函数可以产生以下内容:

Orignally:

var persons = [{"1":1, "2":2, "3":3}, {"1":12, "2":22, "3":32}];
var result = _.func(persons, "1")
Run Code Online (Sandbox Code Playgroud)

后:

result = [{"1":1},{"1":12}]

Jon*_*ski 11

不是一个单一的功能.

您可以组合_.map()迭代数组,_.pick()以减少其中的每个对象.

var result = _.map(persons, function (p) {
    return _.pick(p, '1');
});
Run Code Online (Sandbox Code Playgroud)

您还可以使用_.partialRight()创建迭代器函数:

var result = _.map(persons, _.partialRight(_.pick, '1'));
Run Code Online (Sandbox Code Playgroud)