【发布时间】:2017-04-11 09:20:54
【问题描述】:
假设我有一个这样的数组:
[
{ product: '...', price: 12 },
{ product: '...', price: 12 },
{ product: '...', price: 14 },
{ product: '...', price: 12 }
]
我想按价格对这个数组进行分组,并使用 lodash 的 groupBy 我会得到以下结果:
[
12: [
{ product: '...', price: 12 },
{ product: '...', price: 12 },
{ product: '...', price: 12 }
],
14: [
{ product: '...', price: 14 }
]
]
很好,但我想要一个包含三个数组的数组,因为我想保存某种与起始数组相同的顺序。我想要这个结果:
[
[
{ product: '...', price: 12 },
{ product: '...', price: 12 }
],
[
{ product: '...', price: 14 }
],
[
{ product: '...', price: 12 }
]
]
有这个功能吗?
【问题讨论】:
-
第一个和最后一个产品数组有什么区别?
-
到目前为止您尝试过什么?您可以将您使用过的代码添加到问题中吗?
-
问题比较复杂。我需要有这样的结果。我作为示例展示的数组比我需要处理的数组简单得多。我尝试了很多东西,比如分组、过滤等。
-
您只是在寻找 lodash 解决方案,还是简单的 vanila js 解决方案也可以?
-
我重复 Sebastian Sebald 的问题:第一个和最后一个产品数组有什么区别?其他一些属性是不同的,或者只是将结果分成 2 个元素?
标签: javascript arrays lodash