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

如何将多维数组中的Unix时间戳转换为指定日期格式并保留原响应结构

解决方案

实现思路

  • 首先编写时间戳格式化工具,将13位毫秒级Unix时间戳转换为DD/MM/YYYY格式
  • 完全保留所有层级的字段结构,仅替换目标位置的时间戳值
  • 对原对象做深拷贝后再执行替换操作,避免污染原始接口返回数据

代码实现

// 时间戳转DD/MM/YYYY格式工具函数
const formatUnixToDate = (timestampStr) => {
  const timestamp = Number(timestampStr)
  const date = new Date(timestamp)
  const day = String(date.getDate()).padStart(2, '0')
  const month = String(date.getMonth() + 1).padStart(2, '0')
  const year = date.getFullYear()
  return `${day}/${month}/${year}`
}

// 响应数据转换函数
const transformResponse = (originalResponse) => {
  // 深拷贝原对象,普通数据结构下该方法完全够用,特殊结构可替换为其他深拷贝方案
  const copied = JSON.parse(JSON.stringify(originalResponse))
  // 定位到数据集位置遍历转换
  const dataArr = copied.fus_config.dataSource.dataset.data
  copied.fus_config.dataSource.dataset.data = dataArr.map(item => {
    // 仅替换第一个元素的时间戳,其余值完全保留
    return [formatUnixToDate(item[0]), ...item.slice(1)]
  })
  return copied
}

// 调用示例
const transformedResponse = transformResponse(mockResponse)

注意说明

你示例中给出的转换后日期12/13/1995仅为演示值,实际转换后会显示时间戳对应的真实日期,比如你提供的1631212200000转换后结果为10/09/2021。如果后续时间戳的存储位置有变动,可将逻辑调整为递归遍历所有字段,判断值是否为符合规则的13位数字字符串,符合则执行转换即可适配更多场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 20:39:01