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

如何将多对象数组转换为单个对象?求实现方案

嘿,这个需求很常见,我来给你几个实用的JavaScript解决方案,轻松把多个对象组成的数组合并成单个对象再放进数组里:

方法1:用Object.assign() + 展开运算符

这是最简洁的写法之一,利用Object.assign()的合并特性,配合展开运算符把数组里的每个对象拆成独立参数:

const originalArray = [{"1":"test1"},{"2":"test2"},{"3":"test3"}];
// 合并所有对象到一个空对象里
const mergedObj = Object.assign({}, ...originalArray);
// 把合并后的对象放进数组,得到最终结果
const finalResult = [mergedObj];

console.log(finalResult); // 输出: [{"1":"test1","2":"test2","3":"test3"}]
方法2:用Array.reduce()做累加合并

如果你更倾向于用数组方法来处理,reduce()是个不错的选择,它可以一步步把每个对象的属性合并到累加器里:

const originalArray = [{"1":"test1"},{"2":"test2"},{"3":"test3"}];
// 初始累加器是空对象,每次循环合并当前对象的属性
const mergedObj = originalArray.reduce((accumulator, currentObj) => {
  return {...accumulator, ...currentObj};
}, {});
const finalResult = [mergedObj];

console.log(finalResult); // 同样得到目标格式

小提示:如果原数组里的对象存在重复的键名,后面的对象属性会覆盖前面的哦,这是JavaScript对象属性合并的默认规则~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:37:32