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

如何使用JSONata将两个数组合并为单个对象数组?

将两个数组合并为对象数组的实现方法

给定数据源:

const sourceData = {
  "event_date": ["a","b","c"],
  "values": [1,2,3]
};

期望生成如下结构的结果:

{
  "data": [
    { "date": "a", "value": 1 },
    { "date": "b", "value": 2 },
    { "date": "c", "value": 3 }
  ]
}

核心实现方案

利用JavaScript的Array.map()方法,遍历其中一个数组,通过索引匹配另一个数组的对应元素,构造目标对象:

const sourceData = {
  "event_date": ["a","b","c"],
  "values": [1,2,3]
};

const mergedResult = {
  data: sourceData.event_date.map((dateStr, idx) => ({
    date: dateStr,
    value: sourceData.values[idx]
  }))
};

console.log(mergedResult);

兼容数组长度不一致的情况

如果两个数组长度不同,可通过取两者的最小长度来避免索引越界:

const mergedResult = {
  data: Array.from(
    { length: Math.min(sourceData.event_date.length, sourceData.values.length) },
    (_, idx) => ({
      date: sourceData.event_date[idx],
      value: sourceData.values[idx]
    })
  )
};

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 20:54:55