【发布时间】:2019-11-22 11:26:08
【问题描述】:
我有一个对象,我试图通过将所有相同的值作为键来创建一个新对象。例如,
data = [
{
"sum(PendingBenNotValidated)": 35.0,
"stateName": "Andaman & Nicobar Islands",
"diagMonth": 4,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
},
{
"sum(PendingBenNotValidated)": 8.0,
"stateName": "Andaman & Nicobar Islands",
"diagMonth": 5,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
},
{
"sum(PendingBenNotValidated)": 19.0,
"stateName": "Andaman & Nicobar Islands",
"diagMonth": 7,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
},
{
"sum(PendingBenNotValidated)": 16.0,
"stateName": "Andaman & Nicobar Islands",
"diagMonth": 8,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
},
{
"sum(PendingBenNotValidated)": 1.0,
"stateName": "Andhra Pradesh",
"diagMonth": 1,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
},
{
"sum(PendingBenNotValidated)": 0.0,
"stateName": "Andhra Pradesh",
"diagMonth": 2,
"diagYear": 2018,
"TypeOfPatient": "IndiaTbPrivate"
}]
我必须使用 stateName 作为键来获取我的新对象,如下所示:
new data = [{Andaman & Nicobar Islands: [{PendingBenNotValidated: 35, diagMonth: 4, diagYear: 2018, TypeOfPatient: "IndiaTbPrivate"},{PendingBenNotValidated: 19, diagMonth: 7, diagYear: 2018, TypeOfPatient: "IndiaTbPrivate"}], Andhra Pradesh: [{PendingBenNotValidated: 0, , diagMonth: 2, diagYear: 2018, TypeOfPatient: "IndiaTbPrivate"}]
关于如何做到这一点的任何想法?
【问题讨论】:
-
你有任何代码尝试这样做吗?您应该尝试迭代
data数组并通过 item 键将项目存储在另一个对象中 -
首先
data不是一个有效的对象。先解决这个问题,这样我们才能准确地知道你的对象是什么样子
标签: javascript arrays dictionary lodash