首页 > 解决方案 > 从对象数组中提取属性并存储在另一个对象数组中

问题描述

我有一组来自服务器的对象。

data:[
   {
    // values
   }
]

下面是该数组的一个对象元素。

0:
assignedTo:{
name: "Shokat iqbal"
},

category:{
name: "Fan"
},

complainer:{
name: "Testt"
},

details: "Makk Amjum and my name is yeh and i amthose who is ur father"

location: "Room number 87 blockasdas jknaksdnkaj knasdkan kasndka nasdkas"

status: "in-progress"

title: "My fan is damaged"

_id: "5cade948e0b7ce30c8ef2f05"

我想提取它的一些属性,比如

Assignee: assignedTo.name, category: Category.name, Complainer:complainer.name

并想要制作另一个看起来像这样的对象数组。

[
  {
   Assignee: assignedTo.name,
   Complainer: complainer.name,
   Category: category.name,
   title: title,
   location: location,
   details: details
  }
]

请帮我怎么做?

标签: javascriptarraysobjectjavascript-objects

解决方案


欢迎来到 SO。尝试展示或谈论您尝试过的一些解决方案以及它们失败的地方总是很好的。社区很棒,但他们也感谢人们尝试。

Array.map 将为您解决问题

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

const formattedData = data.map(record => ({
  Assignee: record.assignedTo.name,
  Complainer: record.complainer.name,
  Category: record.category.name,
  title: record.title,
  location: record.location,
  details: record.details,
}));

推荐阅读