将对象内的对象数组作为多个对象 JavaScript

问题描述

我需要在父对象内的多个对象中转换对象数组:

实际对象:

{
name: 'John Doe',Age: 50,email: 'j@gmail.com'
wishlist: [
   {product1 : 1},{product2 : 3},{product3 : 5},{product4 : 2},]
}

目标:

{

name: 'John Doe',email: 'j@gmail.com',product1 : 1,product2 : 3,product3 : 5,product4 : 2,}

有人知道怎么做吗? 亲切的问候,

解决方法

对 Wishlist 数组使用 2. 方法,然后使用 2 运算符创建最终对象。

final=[np.array([[2.],[3.],[8.],[7.]]),\ # all rows of first and first 2 rows of second
       np.array([[8.],[7.],[1.],[0.],[5.]]),\
       np.array([[0.],[5.],[9.],[6.]])]# last 2 rows of third and all rows of next short arrays

,

您可以合并所有产品,然后将它们与对象合并,然后删除初始数组。我认为这种方式更好,不要在迭代其属性之一的同时修改原始对象。

let products = {} 
for (let product of obj.wishlist)
   products = {...products,...product}
obj = {...obj,...products}
delete obj.wishlist
,

您可以使用 destructuring 获取您的 wishlist 数组,以及不包括您的 wishlist 数组(存储在 r 中)的属性对象,然后您可以使用 Object.assign()使用 spread syntax 将您心愿单数组中的所有对象合并到您的 r 对象中:

const {wishlist,...r} = { name: 'John Doe',Age: 50,email: 'j@gmail.com',wishlist: [ {product1 : 1},{product2 : 3},{product3 : 5},{product4 : 2},] };

const res = Object.assign(r,...wishlist);
console.log(res);

,

你可以试试这个,

<div>
  <p>Hello World-1</p>
  <p>Hello World-2</p>
  <p>Hello World-3</p>
</div>
,

如果有人正在寻找更通用的答案。

我已经编写了代码来转换另一个对象或数组中的对象或数组。

如果你问我就矫枉过正。

{{1}}