【问题标题】:get uniq [key,value] from object array with lodash使用 lodash 从对象数组中获取唯一的 [key,value]
【发布时间】:2016-05-06 06:06:36
【问题描述】:

我有一个对象数组 products,其属性为“categoryid, categoryname, name, price”。 我想从这里返回一个只有“categoryid, categoryname”的对象数组,但由于 categoryid 存在多次,我只想要唯一的结果。

我可以使用此代码获取这两个字段,但它不会是唯一的。

_.map(products, _.partialRight(_.pick, ['categoryid', 'category']))

我怎样才能使它独一无二?

【问题讨论】:

  • 你会接受只有 JS 的解决方案还是必须使用 Lodash?
  • 正如@gurvinder372 提到的,您可以先获取唯一值,然后将它们映射出来。 _(products).uniqBy('categoryId').map(_.partialRight(_.pick, ['categoryid', 'categroyname'])).value()

标签: javascript arrays dictionary lodash


【解决方案1】:

我可以分两行来做:

var uniq = _.uniqBy(vm.productList, 'categoryid');
vm.categories = _.map(uniq, _.partialRight(_.pick, ['categoryid', 'category']))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-22
    • 2021-04-27
    • 1970-01-01
    相关资源
    最近更新 更多