首页 > 解决方案 > 如何在对象数组中移动对象属性

问题描述

我有一个这样的对象数组:

currentArray = [
  {
    year: 2011,
    asset: {
      silver: 322,
      gold: 325,
    },
  },
  {
    year: 2012,
    asset: {
      silver: 411,
      gold: 2235,
    },
  },
];

在 JavaScript/TypeScript 中需要做什么,才能将其从当前结构更改为下面的结构?每个资产对象的白银和黄金属性应该存储在上面的对象中,在“年”旁边,并且需要删除资产对象:

desiredArray = [
  {
    year: 2011,
    silver: 322,
    gold: 325,
  },
  {
    year: 2012,
    silver: 411,
    gold: 2235,
  },
];

标签: javascriptarraystypescriptobject

解决方案


let currentArray = [{
    year: 2011,
    asset: {
      silver: 322,
      gold: 325,
    },
  },
  {
    year: 2012,
    asset: {
      silver: 411,
      gold: 2235,
    },
  },
];

currentArray.map(item => {
  Object.assign(item, item.asset)
  delete item.asset;
  
  return item
})

console.log(currentArray)


推荐阅读