Eu tenho esses dados de amostra retornados de uma API.
Estou usando o Lodash _.groupBy
para converter os dados em um objeto que posso usar melhor. Os dados brutos retornados são estes:
[
{
"name": "jim",
"color": "blue",
"age": "22"
},
{
"name": "Sam",
"color": "blue",
"age": "33"
},
{
"name": "eddie",
"color": "green",
"age": "77"
}
]
Quero que a _.groupBy
função retorne um objeto parecido com este:
[
{
color: "blue",
users: [
{
"name": "jim",
"color": "blue",
"age": "22"
},
{
"name": "Sam",
"color": "blue",
"age": "33"
}
]
},
{
color: "green",
users: [
{
"name": "eddie",
"color": "green",
"age": "77"
}
]
}
]
Atualmente estou usando
_.groupBy(a, function(b) { return b.color})
que está retornando isso.
{blue: [{..}], green: [{...}]}
os agrupamentos estão corretos, mas eu realmente gostaria de adicionar as chaves que desejo ( color
, users
). isso é possível usando _.groupBy
? ou algum outro LoDash
utilitário?
_.object
é um apelido para_.zipObject
).