You need to enable JavaScript to run this app. JavaScript如何将扁平数组按每两项分组生成对应键值对象
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript如何将扁平数组按每两项分组生成对应键值对象

实现思路

原数组为每两个元素一组的一维结构,只需按步长2遍历数组,将每组两个元素拼成子数组,绑定到对应序号的对象键上即可完成转换。

代码实现

1. 基础for循环实现(可读性最高)

// 你的原始数组
const sourceArr = [
  "0.001234", "2021-07-14 08:24:30",
  "0.001245", "2021-07-14 01:04:24"
  // 其余元素
];

const result = {};
// 步长为2遍历,每次处理一组元素
for (let i = 0; i < sourceArr.length; i += 2) {
  // 可选:增加边界判断,避免数组长度为奇数时出现undefined
  if (sourceArr[i + 1] === undefined) break;
  const groupIndex = i / 2;
  result[groupIndex] = [sourceArr[i], sourceArr[i + 1]];
}

2. reduce方法实现(更简洁的函数式写法)

const result = sourceArr.reduce((acc, currentVal, index) => {
  // 仅处理每组的起始位置(偶数下标)
  if (index % 2 === 0 && sourceArr[index + 1] !== undefined) {
    acc[index / 2] = [currentVal, sourceArr[index + 1]];
  }
  return acc;
}, {});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 07:06:02