我尝试查找以前的问题,但没有找到答案,所以这是一个非常通用的问题。
我有一个多维数组,如下所示:
array = [
[ "1", "2013-14" , 1234],
[ "2", "2013-14", 2345],
[ "1", "2014-15" , 5234],
[ "2", "2014-15", 7345],
]
我正在尝试根据年份将其转换为嵌套对象:
obj = {
"2013-14": { 1: "1234", 2: "2345" },
"2014-15": { 2: "5234", 2: "7345" }
}
我尝试了这个方法,它提供了一个类似但错误的解决方案:
let obj = {}
for (let i = 0; i < array.length; i++) {
obj[array[i][1]] = {
[array[i][0]]: array[i][2]
}
}
我得到的解决方案:
obj = {
"2013-14": { 2: "2345" },
"2014-15": { 2: "7345" }
}
因此,与其将不同的值按照相同的键连接在一起,即在这种情况下是年份,它会覆盖之前的值并保存最后一个。