为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用地图或 JavaScript 中的其他方法创建自定义数组?

如何使用地图或 JavaScript 中的其他方法创建自定义数组?

万千封印 2023-11-11 20:54:11
我有从后端带来的这个数组:[{  timeDate: '2020-12-10T06:00:00.535+00:00',  totTransApproved: 75,  totTransDeclined: 3,  totAmount: 5016}, {  timeDate: '2020-12-10T06:01:00.535+00:00',  totTransApproved: 71,  totTransDeclined: 4,  totAmount: 11337}, {  timeDate: '2020-12-10T06:02:00.535+00:00',  totTransApproved: 83,  totTransDeclined: 6,  totAmount: 14370}]我需要将其转换为这种形式:[{  timeDate: '12/04/20 0:00',  name: 'Approved',  totTrans: 180,  totAmount: 125,}, {  timeDate: '12/04/20 0:00',  name: 'declined',  totTrans: 10,  totAmount: 12,}]我已经尝试过这种方式,但我需要两个对象const datums = records.map((item) => ({  timeDate: item.timeDate,  name: 'Aprobada',  totTrans: item.totTransApproved,  totAmount: item.totAmount,}));我该怎么做 ?
查看完整描述

1 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

我认为您的意思是您想要将输入中的每个对象拆分为单独的“已批准”和“已拒绝”对象。如果这是正确的,您可以从map()


const records = [{timeDate: '2020-12-10T06:00:00.535+00:00',totTransApproved: 75,totTransDeclined: 3,totAmount: 5016}, {timeDate: '2020-12-10T06:01:00.535+00:00',totTransApproved: 71,totTransDeclined: 4,totAmount: 11337}, {timeDate: '2020-12-10T06:02:00.535+00:00',totTransApproved: 83,totTransDeclined: 6,totAmount: 14370}]


const datums = records.map((item) => (

  [

    { timeDate: item.timeDate,

      name: 'Approved',

      totTrans: item.totTransApproved,

      totAmount: item.totAmount

    },

    { timeDate: item.timeDate,

      name: 'Declined',

      totTrans: item.totTransDeclined,

      totAmount: item.totAmount

    }

  ]

  ));

  

  console.log(datums);

.as-console-wrapper { max-height: 100% !important; top: 0; }


或者,如果您不希望它们按数组分组,请使用flatMap()展平返回的对象数组。


const datums = records.flatMap((item) => (

  [

    { timeDate: item.timeDate,

      name: 'Approved',

      totTrans: item.totTransApproved,

      totAmount: item.totAmount

    },

    { timeDate: item.timeDate,

      name: 'Declined',

      totTrans: item.totTransDeclined,

      totAmount: item.totAmount

    }

  ]

  ));


查看完整回答
反对 回复 2023-11-11
  • 1 回答
  • 0 关注
  • 100 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信