Javascript 如何在数组中连接JS对象?旁观者

Javascript 如何在数组中连接JS对象?旁观者,javascript,arrays,object,Javascript,Arrays,Object,我可以使用哪一条直线连接数组中任意数量的对象?重复的值应放置在嵌套数组中,如下所示: 我有以下意见: [ {a:123}, {b:abc,c:455}, {d:null,c:01,b:{} ] 我应该得到这个结果: { a:123, b:[abc,{}], c:[455,01],, d:空 } 我尝试过这个,但没有结果: my_array.mapfunctionx{ var result={}; x中的forvar i{ 结果[i]=x[i]; } 返回结果; }; 谢谢大家! 您可以查看对象数

我可以使用哪一条直线连接数组中任意数量的对象?重复的值应放置在嵌套数组中,如下所示:

我有以下意见:

[ {a:123}, {b:abc,c:455}, {d:null,c:01,b:{} ] 我应该得到这个结果:

{ a:123, b:[abc,{}], c:[455,01],, d:空 } 我尝试过这个,但没有结果:

my_array.mapfunctionx{ var result={}; x中的forvar i{ 结果[i]=x[i]; } 返回结果; }; 谢谢大家!

您可以查看对象数组。在内部,循环遍历每个对象的关键点。如果累加器没有钥匙,则添加钥匙。如果键已存在,请使用创建值数组。[].concatacc[k],如果acc[k]是数组或单个值,则v将处理

常量输入=[ {a:123}, {b:2222,c:455}, {d:null,c:01} ] const output=input.reduceac,o=>{ Object.entrieso.forEach[k,v]=>{ 如果根据hasOwnPropertyk acc[k]=[]混凝土[k],v 其他的 acc[k]=v } 返回acc }, {}
console.LogoutPut请访问,查看和。做一些研究,搜索相关话题等;如果你被卡住了,发布你的尝试,注意输入和预期输出。谢谢@adiga!!这管用!我看到你使用es6语法,你能转换成es5吗?