我有一个对象集合,我正在尝试从顶层获取所有称为“影响”的属性值,丢弃所有其他属性和子集合,按“影响”分组,然后理想地在值上加上影响一词

var topics = [{
  var1 : "hi", var2 : "yo", children : [], impact : "high"
}, {
  var1 : "hi", var2 : "yo", children : [], impact : "med"
}, {
  var1 : "hi", var2 : "yo", children : [], impact : "low"
   {
  var1 : "hi", var2 : "yo", children : [], impact : "med"
},
}]


我想要[{impact: "High"}, {impact: "Low"}, {impact: "Med"}]

我已经尝试了以下方法,但是没有用

var impacts = _.chain(topics).pluck("impact").groupBy("impact").value();

最佳答案

sortedUniqBy()中使用pick()map()Lodash进行尝试。

var o = _.sortedUniqBy(product, function(e) {return e.impact;})
_.map(o, function(e) {return _.pick(e, 'impact')})

10-01 04:17