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

如何将JSON数组数据转换为键值对格式以适配API使用

数组转JSON键值对对象实现方法

你当前使用的reduce遍历写法已经可以满足转换需求,直接运行即可输出你需要的目标格式:

// 定义表头列名数组
var columns = ["ID", "Name", "Age"];
// 定义对应行数据数组
var rows = ["212", "David", "38"];
// 遍历行数据,按索引匹配表头生成键值对
var result =  rows.reduce(function(result, field, index) {
  result[columns[index]] = field;
  return result;
}, {})

console.log(result); // 输出 {"ID":"212","Name":"David","Age":"38"}

如果后续需要处理批量多行数据的场景,也可以扩展为以下写法,适配多组行输入的情况:

// 源数据格式:第一项为表头,后续为行数据
var sourceData = [["ID","Name","Age"],["212","David","38"],["213","Lisa","25"]];
var columns = sourceData[0];
var resultList = sourceData.slice(1).map(row => {
  return row.reduce((res, field, index) => {
    res[columns[index]] = field;
    return res;
  }, {})
})

console.log(resultList); 
// 输出 [{"ID":"212","Name":"David","Age":"38"},{"ID":"213","Name":"Lisa","Age":"25"}]

如果你的原始输入是未补全结构的字符串形式,需要先做一次JSON解析处理:

// 原始字符串输入
var rawStr = '["ID","Name","Age"],["212","David","38"]';
// 补全为合法JSON数组后解析
var sourceArr = JSON.parse(`[${rawStr}]`);
var columns = sourceArr[0];
var rows = sourceArr[1];
// 后续执行reduce逻辑即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 03:48:05