如何动态转换这种类型的数组:
[
[a,b,c],
[d,e,f],
]
进入
[
[a,d],
[b,e],
[c,f],
]
第一个数组的长度并不总是相同。
尝试了以下
for (var i = 0; i < multi.length; i++) { // 2
for (var j = 0; j < multi[i].length; j++) { // 3
multi2[j].push(multi[j][i])
}
}
它不起作用
答案 0 :(得分:-1)
两个问题:
这里是fiddle
var multi = [
["a","b","c"],
["d","e","f"],
["g","h","i"],
]
var multi2 = [];
for (var i = 0; i < multi.length; i++) { // 3
for (var j = 0; j < multi[i].length; j++) { // 3
multi2[j] = multi2[j]||[]; // initialize subarray if necessary
multi2[j].push(multi[i][j])
}
}