首页 > 解决方案 > 将对象内的对象数组作为多个对象 JavaScript

问题描述

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

实际对象:

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

目标:

{

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

}

有谁知道这是怎么做到的吗?亲切的问候,

标签: javascriptarraysobjectarrayobject

解决方案


在愿望清单数组上使用reduce()方法,然后使用spread运算符创建最终对象。

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

const processData = (data) => {
  const wishlist = data.wishlist.reduce((result, obj) => {
     return {...result, ...obj};
  }, {});
  const finalObj = {...data, ...wishlist};
  delete finalObj.wishlist;
  return finalObj;
}

console.log(processData(myObj));


推荐阅读