【发布时间】:2018-09-14 12:50:53
【问题描述】:
使用这个代码let result = _.groupBy(obj, 'type');我有这个回报:
{
"success": [{
"type": "success",
"messages": "Assignment saved."
}, {
"type": "success",
"messages": "Assignment saved."
}, {
"type": "success",
"messages": "Assignment saved."
}]
}
但我需要转换成这个:
{
"error": ["Error msg", "Error 2 msg", "Error 3 msg"],
"notice": ["Notice 1 msg", "Notice 2 msg"],
"success": ["Success 1 msg", "Success 2 msg", "Success 3 msg"]
}
我应该在我的代码中做些什么不同的事情?
我缺少 Lodash 上的一些配置?
【问题讨论】:
-
它们是按类型分组的,并不是要修改对象
-
是的,我需要找到一种方法来做到这一点。我需要
groupBy并额外调整我的return以获得array。但我找不到任何关于如何使用groupBy操作object的documentation。 -
那么,在输入对象中,您已经有一个名为
success的键,它是一个数组?或者它只是groupBy的结果?同样,error、notice有单独的数组吗?或者您在一个数组中拥有的所有数据,并且 .key 数组的名称是success(这很尴尬)。你能告诉我们原始输入吗? -
您应该粘贴原始的
obj。此外,期望值显示其他对象中未显示的键和消息,这是没有意义的。
标签: javascript json lodash