首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将对象数组转换为单个对象

如何将对象数组转换为单个对象
EN

Stack Overflow用户
提问于 2020-07-18 07:55:36
回答 2查看 66关注 0票数 1

如何将包含多个对象的数组转换为单个对象

我想转换成这样的东西:

代码语言:javascript
复制
    [

      {
        'Kyber': {tokenSymbol: 'DAI', avgPrice: 1}
      },
      

      {
       'Bamboo Relay': {tokenSymbol: 'DAI',avgPrice: 1}
      }
   
    ]

类似这样的东西:

代码语言:javascript
复制
{
    'Kyber': {tokenSymbol: 'DAI', avgPrice: 1},
   'Bamboo Relay': {tokenSymbol: 'DAI',avgPrice: 1}
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-18 08:13:07

使用Array.reduce

代码语言:javascript
复制
const data = 
        [ { 'Kyber': { tokenSymbol: 'DAI', avgPrice: 1} } 
        , { 'Bamboo Relay': { tokenSymbol: 'DAI', avgPrice: 1} } 
        ] 
const result = data.reduce((a,c)=>
        {
        for (const [k,v] of Object.entries(c)) a[k]={...v} 
        return a
        }, {})
票数 3
EN

Stack Overflow用户

发布于 2020-07-18 08:14:07

您可以通过迭代对象数组来实现这一点,对于每个对象,将该对象合并到结果对象。下面的解决方案可以帮助你

代码语言:javascript
复制
const data = [
  {
    Kyber: { tokenSymbol: 'DAI', avgPrice: 1 }
  },
  {
    'Bamboo Relay': { tokenSymbol: 'DAI', avgPrice: 1 }
  }
]

const res = {}
data.forEach(obj => {
  Object.assign(res, obj)
})

console.log(res)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62963175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档