嘿伙计们,我需要帮助:P
这段代码有什么问题?
var arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var narr = []; // want to be like that [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
function arange(mass) {
for (var i = 0; i < mass.length; i++) {
for (var j = 0; j < mass[i].length; j++) {
narr[mass[i]].push(mass[j][i]);
}
}
}
如果我调用该函数,则会出现问题:“TypeError:无法读取未定义的属性‘push’。”谢谢。 另外link here
最佳答案
您不小心尝试对 narr
值而不是数组本身调用 push
。当然,原始值没有定义push
函数。您的代码应如下所示:
var mass = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var narr = [];
function arange(mass) {
for (var i = 0; i < mass.length; i++) {
var innerArray = [];
for (var j = 0; j < mass[i].length; j++) {
innerArray.push(mass[j][i]);
}
narr.push(innerArray);
}
}
关于javascript - 多维数组 JAVASCRIPT 出了问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36778362/