このサンプルデータはAPIから返されます。
Lodash _.groupBy
を使用して、データをより使いやすいオブジェクトに変換しています。返される生データはこれです:
[
{
"name": "jim",
"color": "blue",
"age": "22"
},
{
"name": "Sam",
"color": "blue",
"age": "33"
},
{
"name": "eddie",
"color": "green",
"age": "77"
}
]
この_.groupBy
関数が次のようなオブジェクトを返すようにしたい:
[
{
color: "blue",
users: [
{
"name": "jim",
"color": "blue",
"age": "22"
},
{
"name": "Sam",
"color": "blue",
"age": "33"
}
]
},
{
color: "green",
users: [
{
"name": "eddie",
"color": "green",
"age": "77"
}
]
}
]
現在使用しています
_.groupBy(a, function(b) { return b.color})
これを返しています。
{blue: [{..}], green: [{...}]}
グループ化は正しいですが、必要なキー(color
、users
)を追加したいと思います。これは可能_.groupBy
ですか?または他のLoDash
ユーティリティ?
_.object
の別名です_.zipObject
)。