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

如何将含日期键的对象数组转换为指定结构的嵌套数组

日期键对象数组转指定嵌套数组结构的实现方法

你可以通过数组的map方法结合Object.entries来完成这个转换,具体代码如下:

const arrayWithDates = [
  {'2023-06-02': 2, '2023-06-21': 6},
  {'2023-06-29': 2, '2023-06-23': 1}
];

const arrayTransformed = arrayWithDates.map(obj => 
  Object.entries(obj).map(([date, count]) => ({
    count: String(count),
    date
  }))
);

console.log(arrayTransformed);

代码说明:

  • 外层map遍历原数组里的每一个对象元素;
  • Object.entries(obj)会把对象转换成键值对数组,比如第一个对象会被转为[['2023-06-02', 2], ['2023-06-21', 6]];
  • 内层map遍历这些键值对,通过解构赋值直接取出date(原对象的键)和count(原对象的值),再组装成目标结构的对象;
  • 用String(count)将数字类型的count转为字符串,和你需要的目标结构完全匹配;

如果需要按日期对每个子数组里的元素排序,可以在转换后添加sort逻辑:

const arrayTransformed = arrayWithDates.map(obj => 
  Object.entries(obj)
    .map(([date, count]) => ({
      count: String(count),
      date
    }))
    .sort((a, b) => new Date(a.date) - new Date(b.date))
);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 02:32:20