【发布时间】:2016-08-22 22:30:28
【问题描述】:
我试图找到一种简洁的方法来根据谓词将对象数组划分为数组组。
var arr = [
{id: 1, val: 'a'},
{id: 1, val: 'b'},
{id: 2, val: 'c'},
{id: 3, val: 'a'}
];
//transform to below
var partitionedById = [
[{id: 1, val: 'a'}, {id: 1, val:'b'}],
[{id: 2, val: 'c'}],
[{id: 3, val: 'a'}
];
我看到 this question ,它使用纯 JS 提供了一个很好的概述,但我想知道是否有使用 lodash 的更简洁的方法来做到这一点?我看到了partition function,但它只将数组分成两组(需要它是'n'个分区)。 groupBy 通过键将它分组到一个对象中,我正在寻找相同的对象,但在一个数组中(没有键)。
有没有更简单的方法可以嵌套几个 lodash 函数来实现这一点?
【问题讨论】:
标签: javascript lodash