Javascript 如何根据关键字将对象数组拆分为不同的对象

Javascript 如何根据关键字将对象数组拆分为不同的对象,javascript,arrays,json,object,Javascript,Arrays,Json,Object,我有这种格式的数据 [{ "Consumer": [{ "Associated ID": "JSUDB2LXXX / BIC 7503 / US", "Parent Consumer": "7503" }], "Owner": [{ "Entity": "EN",

我有这种格式的数据

[{
    "Consumer": [{
        "Associated ID": "JSUDB2LXXX / BIC 7503 / US",
        "Parent Consumer": "7503"
    }],
    "Owner": [{
        "Entity": "EN",
        "Region": "LA"
    }]
}]
我想转换成以下格式,我必须将标题和值作为新键添加到旧键和值中,并且必须在单独的对象中分离每个旧键值

[{
    "Consumer": [{
            "title": "Associated ID",
            "name": "JSUDB2LXXX / BIC 7503 / US"
        },
        {
            "title": "Parent Consumer",
            "name": "7503"
        }
    ],
    "Owner": [{
            "title": "Entity",
            "name": "EN"
        },
        {
            "title": "Region",
            "name": "LA"
        }
    ]
}]
希望有帮助:

let data = [{
    "Consumer": [{
        "Associated ID": "JSUDB2LXXX / BIC 7503 / US",
        "Parent Consumer": "7503"
    }],
    "Owner": [{
        "Entity": "EN",
        "Region": "LA"
    }]
}]

let final = []
data.forEach(el => {
  Object.keys(el).forEach(key => {
    let values = []
    Object.entries(el[key][0]).forEach(entry => {
      values.push({title: entry[0], name: entry[1]})
    })
    let newElement = {}
    newElement[key] = values
    final.push(newElement)
  })
})
console.log(final)
您可以在这里尝试:


是的,它很有魅力,谢谢@马尔桑切斯