如何将对象数组转换为具有索引的对象?

Posted

技术标签:

【中文标题】如何将对象数组转换为具有索引的对象?【英文标题】:How to convert array of objects to object with index? 【发布时间】:2017-11-07 01:21:27 【问题描述】:

我有一个这样的数组->

var jsonResponse = [
        
        "name": "abc",
        "value": [
             "label" : "Daily", "value":"Daily"         
        ]
    ,
       
        "name": "ccc",
        "value": [
             "label" : "Daily", "value":"Daily"         
        ]
    
]

我想把它转换成->


    "abc" :    
        "name": "abc",
        "value": [
             "label" : "Daily", "value":"Daily"         
        ]
    ,
    "ccc":    
        "name": "ccc",
        "value": [
             "label" : "Daily", "value":"Daily"         
        ]
    
]

可能我不想要 foreach。 我们可以使用 Object.assign(arrayDetails, ...jsonResponse); 但是如何做对象索引呢?

【问题讨论】:

【参考方案1】:
let indexedResult = ;
jsonResponse.map(obj => indexedResult[obj.name] = obj)

console.log(JSON.stringify(indexedResult));

【讨论】:

以上是关于如何将对象数组转换为具有索引的对象?的主要内容,如果未能解决你的问题,请参考以下文章

如何将具有元素数组的每个对象的对象列表转换为具有子元素作为属性的对象数组

将数据数组转换为具有属性的对象[重复]

使用 ramda 将数组数组转换为数组对象

如何将对象数组转换为在打字稿中具有动态键的单个对象

将字符串转换为具有重复键的对象到数组

将每个具有一个对象的 JSON 对象数组转换为 JSON 对象数组 [关闭]