为了账号安全,请及时绑定邮箱和手机立即绑定

将对象数组组合成一个对象

将对象数组组合成一个对象

翻阅古今 2022-10-13 16:38:46
我有看起来像这样的数据。[  {    key: 'myKey'    value: 'myValue'  },  {    key: 'mySecondKey'    value: 'mySecondValue'  },  {    key: 'myThirdKey'    value: 'myThirdValue'  },]对象的数量取决于帐户设置了多少值。我正在尝试以如下格式返回它{  mykey: 'myValue'  mySecondKey: 'mySecondValue'  myThirdkey: 'myThirdValue'}关于我将如何去做这件事的任何建议?
查看完整描述

3 回答

?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

你可以做一些事情,比如


const src = [{key:'myKey',value:'myValue'},{key:'mySecondKey',value:'mySecondValue'},{key:'myThirdKey',value:'myThirdValue'},],


    result = Object.assign({}, ...src.map(o => ({[o.key]: o.value})))

    

console.log(result)

.as-console-wrapper{min-height:100%;}


查看完整回答
反对 回复 2022-10-13
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

您可以reduce为此使用:

const data = [{key:"myKey",value:"myValue"},{key:"mySecondKey",value:"mySecondValue"},{key:"myThirdKey",value:"myThirdValue"}];


const res = data.reduce((obj, {key, value}) => ({...obj, [key]: value}), {});


console.log(res);



查看完整回答
反对 回复 2022-10-13
?
BIG阳

TA贡献1859条经验 获得超6个赞

其他答案可行,但我觉得它们有点复杂,这是一个简单的 for of 循环:


const data = [

  {

    key: 'myKey',

    value: 'myValue'

  },

  {

    key: 'mySecondKey',

    value: 'mySecondValue'

  },

  {

    key: 'myThirdKey',

    value: 'myThirdValue'

  }

];


const result = {};


for(const {key, value} of data) {

  result[key] = value;

}


console.log(result);


查看完整回答
反对 回复 2022-10-13
  • 3 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信