Does anyone know a way in Vanilla Javascript to group an array of objects based on an object key, then create a new array of objects based on the grouping? Also grouping elements within the element. I hope to make this clear with an example. I have an array of fruits
fruits: [
{
id: "645",
lang: "it",
name: "Banana",
},
{
id: "3671",
lang: "it",
name: "Pesca",
},
{
id: "3671",
lang: "en",
name: "Peach",
},
{
id: "124",
lang: "it",
name: "Anguria",
},
{
id: "124",
lang: "en",
name: "Watermelon",
},
]
I wish the output was this
fruitsGroupedById: [
{
id: "645",
language: [
{
lang: "it",
name: "Banana",
},
],
},
{
id: "3671",
language: [
{
lang: "it",
name: "Pesca",
},
{
lang: "en",
name: "Peach",
},
],
},
{
id: "124",
language: [
{
lang: "it",
name: "Anguria",
},
{
lang: "en",
name: "Watermelon",
},
],
},
]