求助:如何将JavaScript二维数组转换为指定JSON格式
解决方法:将二维数组转换为对象数组
嘿,刚接触JavaScript不用发愁,这个转换需求其实很容易实现,咱们用数组的map()方法就能快速搞定!
基础实现方式
map()方法的作用就是遍历数组的每一项,把每一项转换成你想要的格式,最后返回一个新数组。针对你的需求,代码可以这么写:
// 你从服务器拿到的原始二维数组 const originalArray = [ ["111", 1], ["1010", 4], ["111", 5], ["1010", 6], ["1010", 7] ]; // 转换为目标结构的数组 const convertedArray = originalArray.map(item => { // 每个item就是原数组里的子数组,比如["111",1] return { branch: item[0], // 子数组第一个元素赋值给branch属性 id: item[1] // 子数组第二个元素赋值给id属性 }; }); // 打印结果看看 console.log(convertedArray);
运行这段代码后,convertedArray就是你想要的结构啦!
更简洁的写法(可选)
如果你想让代码更精简,可以用数组解构的语法,直接把子数组的元素提取出来:
const convertedArray = originalArray.map(([branch, id]) => ({ branch, id }));
这里的([branch, id])就是把每个子数组的第一个元素命名为branch,第二个命名为id,然后({ branch, id })是对象字面量的简写,等同于{ branch: branch, id: id }。这个写法更高级,等你对JS的解构语法熟悉后再用也完全没问题~
内容的提问来源于stack exchange,提问作者Aqib Zaman
相关产品推荐
相关产品推荐

