首页 > 解决方案 > 如何遍历对象数组并替换值es6

问题描述

我有一个对象数组

const array =[{ 
    "id": 1,
    "time": "2021-09-22T05:36:22.484Z"
},
 {​
   ​"id": 2,
   ​"time": "2021-10-22T03:25:26.484Z"
}]

我想在转换为时区后替换所有时间值。

我可以使用转换为时区

moment.tz("time","America/Toronto").format("YYYY-MM-DD HH:mm:ss)

但不确定如何循环替换每个对象的时间值。

所以理想情况下,我会有类似的东西:

const array =[{ 
    "id": 1,
    "time": "2021-09-22 15:00"
},
 {​
   ​"id": 2,
   ​"time": "2021-10-22T 12:00"
}]

标签: javascriptarraysobjectecmascript-6

解决方案


根据您的数据,您可以根据forEach需要简单地使用和操作时间属性。

const array =[
  {  "id": 1, "time": "2021-09-22T05:36:22.484Z" }, 
  {  "id": 2, "time": "2021-10-22T03:25:26.484Z" },
]

array.forEach(x => {
  x.time = moment(x.time).utcOffset(90).format("YYYY-MM-DD HH:mm:ss")
})

推荐阅读