You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ES6如何遍历对象数组并替换经时区转换后的time属性值

解决方案

你可以通过数组的map或者forEach方法遍历修改字段,首先需要修正你现有转换代码的两处小问题:

  1. 需要把每个对象的实际time值作为第一个参数传入moment.tz,而非写死字符串"time"
  2. format方法的参数引号需要闭合,可根据你需要的输出格式调整模板

方法1:生成新数组(不修改原数据,无副作用更推荐)

const convertedArray = array.map(item => {
  return {
    ...item,
    // 调整format参数匹配你需要的时间格式即可
    time: moment.tz(item.time, "America/Toronto").format("YYYY-MM-DD HH:mm")
  }
})

方法2:直接修改原数组

array.forEach(item => {
  // 要和你示例输出格式匹配的话,把format参数改成对应模板即可,比如第二个值带T就用"YYYY-MM-DD[T] HH:mm"
  item.time = moment.tz(item.time, "America/Toronto").format("YYYY-MM-DD HH:mm")
})

内容的提问来源于stack exchange,提问作者programhur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 13:36:04