You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将包含多个对象的array数组合并为单个object对象

实现方案

以下给出JavaScript环境下的多种实现方式:

方法1:ES6 一行极简实现

直接用Object.assign配合数组扩展运算符即可完成合并:

const array1 = [ {1:'Eat'}, {2:'Shower'}, {3:'Shave'} ];
const object1 = Object.assign({}, ...array1);

方法2:reduce 通用实现

用数组的reduce方法处理,兼容性和可读性更好:

const object1 = array1.reduce((total, current) => {
  return Object.assign(total, current)
}, {})

也可以用对象扩展运算符简化写法:

const object1 = array1.reduce((total, current) => ({...total, ...current}), {})

方法3:基础循环实现

如果需要兼容ES5及更低版本环境,可以用普通for循环遍历:

var object1 = {};
for (var i = 0; i < array1.length; i++) {
  var item = array1[i];
  for (var k in item) {
    if (item.hasOwnProperty(k)) {
      object1[k] = item[k];
    }
  }
}

  • 补充注意:你示例中的Eat、Shower等值如果是字符串类型,实际代码中需要包裹引号,否则会触发变量未定义的语法错误。

内容的提问来源于stack exchange,提问作者OjayChima

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 22:06:02