Группировка массива объектов
Имеется массив объектов. Необходимо сгруппировать его по одному из ключей объекта.
const foods = [
{id: 1, title: 'apple', type: 'fruit'},
{id: 2, title: 'banana', type: 'fruit'},
{id: 3, title: 'bird', type: 'meat'},
{id: 4, title: 'beer', type: 'drinks'},
{id: 5, title: 'cow', type: 'meat'},
]
Должен получиться следующий результат:
const foodTypes = [
{
type: 'fruit',
foods: [
{id: 1, title: 'apple', type: 'fruit'},
{id: 2, title: 'banana', type: 'fruit'},
]
},
{
type: 'meat',
foods: [
{id: 3, title: 'cow', type: 'meat'},
{id: 4, title: 'bird', type: 'meat'},
]
},
{
type: 'drinks',
foods: [
{id: 5, title: 'beer', type: 'drinks'},
]
},
]
Источник: Stack Overflow на русском