Javascript 如何合并到索引数组?

Javascript 如何合并到索引数组?,javascript,arrays,object,ecmascript-6,merge,Javascript,Arrays,Object,Ecmascript 6,Merge,我的目标如下: object1 = [ { title: "id", platformOne: value}, { title: "name", platformOne: name }, { title: "env", platformOne: env } ] 我想把它和另一个合并。相同的结构,相同的“title”键,但紧跟其后的键名不同: object2 = [ { title: "id", platf

我的目标如下:

object1 = [
 { title: "id", platformOne: value},
 { title: "name", platformOne: name }, 
 { title: "env", platformOne: env }
]
我想把它和另一个合并。相同的结构,相同的“title”键,但紧跟其后的键名不同:

object2 = [
 { title: "id", platformTwo: value},
 { title: "name", platformTwo: name }, 
 { title: "env", platformTwo: env }
]
我希望它看起来像这样:

object3 = [
 { title: "id", platformOne: value, platformTwo: value},
 { title: "name", platformOne: name, platformTwo: name }, 
 { title: "env", platformOne: env, platformTwo: env }
]

你能帮我做这个吗?非常感谢。

您可以这样做:

const object3 = object1.map((obj, idx) => ({...obj, ...object2[idx]}));

您可以这样做:

const object3 = object1.map((obj, idx) => ({...obj, ...object2[idx]}));

有许多不同的方法可以做到这一点,您可以使用
reduce

object1=[
{title:“id”,platformOne:“value”},
{标题:“名称”,平台:“名称”},
{标题:“环境”,平台一:“环境”},
];
对象2=[
{标题:“id”,平台二:“值”},
{标题:“名称”,平台二:“名称”},
{标题:“环境”,平台二:“环境”},
];
arr=[object1,object2].flat();
res=arr.reduce((r,o)=>{
如果(!r[o.title])r[o.title]=o;
else r[o.title]={…r[o.title],…o};
返回r;
}, {});

console.log(Object.values(res))有许多不同的方法来实现这一点,您可以使用
reduce

object1=[
{title:“id”,platformOne:“value”},
{标题:“名称”,平台:“名称”},
{标题:“环境”,平台一:“环境”},
];
对象2=[
{标题:“id”,平台二:“值”},
{标题:“名称”,平台二:“名称”},
{标题:“环境”,平台二:“环境”},
];
arr=[object1,object2].flat();
res=arr.reduce((r,o)=>{
如果(!r[o.title])r[o.title]=o;
else r[o.title]={…r[o.title],…o};
返回r;
}, {});

console.log(Object.values(res))您也可以使用它:

var object3=[];
object1.forEach(函数(项,索引){
object3[索引]=项目;
object3[index].platformTwo=object2[index].platformTwo;

});您也可以使用它:

var object3=[];
object1.forEach(函数(项,索引){
object3[索引]=项目;
object3[index].platformTwo=object2[index].platformTwo;

});请发布一次尝试。提示:如果数组长度相同,请尝试
Array#map
。您似乎正在寻找
zipWith
请发布尝试。提示:如果数组长度相同,请尝试
Array#map
。您似乎正在查找
zipWith
您在object1.map的末尾缺少一个括号((obj,idx)=>({…obj,…object2[idx]});是 啊对不起,现在修好了。这很优雅,很完美。这正是我在一行中想要的。非常感谢!在object1.map的末尾缺少一个括号((obj,idx)=>({…obj,…object2[idx]}));是 啊对不起,现在修好了。这很优雅,很完美。这正是我在一行中想要的。非常感谢!