_.pick for collections(下划线/ lodash)

时间:2014-04-11 13:11:47

标签: underscore.js lodash

是否有一个lodash函数,您可以通过仅选择指定的属性来创建另一个集合?

stats = [{a:1, b:1}, {a:2, b:2}]
reducedStats = _.pick(stats, 'a'); // now is [{a:1},{a:2}]

普通pick仅适用于对象,不适用于集合。

我用

实现了它
stats = stats.map(_.partialRight(_.pick, 'a'));

这有点冗长。

1 个答案:

答案 0 :(得分:2)

在我的示例中,我添加了一个名为make的方法来执行您的任务。

var _ = require('lodash');
_.make = (arr, ...args) => arr.map(obj => _.pick(obj, args));