Javascript VueJs-将对象从数组检索到新的对象数组中

Javascript VueJs-将对象从数组检索到新的对象数组中,javascript,arrays,vue.js,Javascript,Arrays,Vue.js,有人能帮我找到一种方法,将对象从对象数组返回到一个新的对象数组中,并使用对象名而不是键 array = [ 1: { cart: { fruits: {}, vegetables: {}, juices: {}} }, 2: { cart: { boxes: {}, tools: {}, bottles: {}} } ] 我试图使用方法和计算属性在Vuejs中获得这个特定的输出,但是我只能以普通数组的形式获得带有键的输出。我需要对象名而不是键 array = [

有人能帮我找到一种方法,将对象从对象数组返回到一个新的对象数组中,并使用对象名而不是键

array = [
  1: {
    cart: { fruits: {}, vegetables: {}, juices: {}}
  },
  2: {
    cart: { boxes: {}, tools: {}, bottles: {}}
  }
]
我试图使用方法和计算属性在Vuejs中获得这个特定的输出,但是我只能以普通数组的形式获得带有键的输出。我需要对象名而不是键

array = [
  1: {
    cart: { fruits: {}, vegetables: {}, juices: {}}
  },
  2: {
    cart: { boxes: {}, tools: {}, bottles: {}}
  }
]
预期产量

newArray = {
  cart: { fruits: {}, vegetables: {}, juices: {} boxes: {}, tools: {}, bottles: {}}
}
可以使用键以所需格式使用和合并对象

let array=[{购物车:{水果:{},蔬菜:{},果汁:{},{购物车:{盒子:{},工具:{},瓶子:{}] 设op=array.reduce op,inp=>{ 让key=Object.keysinp[0] op[key]={…op[key],…inp[key]} 返回操作 },{}
console.logop一种可能的解决方案是,在迭代数组中每个对象的时,使用和在最终预期输出的相关键上收集它们:

设arr=[ { 购物车:{水果:{},蔬菜:{},果汁:{}, 其他:{foo:{},bar:{} }, { 购物车:{盒子:{},工具:{},瓶子:{}, 其他:{oof:{},rab:{} } ]; 设res=arr.reduceac,obj=> { Object.keysobj.forEachkey=> { acc[键]=acc[键]|{}; Object.assignacc[key],obj[key]; }; 返回acc; }, {}; console.logres; .as控制台{背景颜色:黑色!重要;颜色:石灰;}
.作为控制台包装器{最大高度:100%!重要;顶部:0;}您的阵列无效。请告诉我哪里出错了?所以我可以在将来更正它。数组中的元素不是名称-值对。数组内的内容=[1:{},2:{},]无效。相反,有效语法只是array=[{},{}]好的,我理解。我会确保下次使用正确的语法。但我想我的观点是在问题中提出的,因为我得到了我想要的解决方案。您的回答在控制台日志中为我提供了正确的输出,但当我在Vuejs中使用方法和computed属性应用它时,输出结果是未定义的。可能是我在细节中遗漏了什么。但是,谢谢你的邀请answer@raghunath这很奇怪。如果你使用得当,它应该能工作。可能您在复制时遗漏了添加内容。交叉检查一次将很乐意帮助moreI复制整个内容,并在computed properties中使用它。我所做的唯一更改是先设置变量,然后将代码分配给它。但我仍然得到一个未定义的输出。但它在控制台日志中获得了输出,我不得不对它进行一些调整,使其在我自己的代码中工作。但这是完美的。非常感谢你。