2015-11-05 85 views
0

这个问题对我来说很难在标题中总结,所以我很抱歉,如果它是误导性的。如何将数组数组作为行转换为数组数组作为JavaScript中的列?

我有格式化像这样一个数组的数组:

array = [ [1,2,3,4,5,6,7,8,9], 
      [2,3,4,5,6,7,8,9,1], 
      [3,4,5,6,7,8,9,1,2], 
      [1,2,3,4,5,6,7,8,9], 
      [2,3,4,5,6,7,8,9,1], 
      [3,4,5,6,7,8,9,1,2], 
      [1,2,3,4,5,6,7,8,9], 
      [2,3,4,5,6,7,8,9,1], 
      [3,4,5,6,7,8,9,1,2]] 

正如你可以看到它的本质与子阵列作为表中的行的表。

我想创建一个采用主数组并顺时针旋转90度的函数。所以新的子数组是每个数组的第一个索引,每个数组的第二个索引,每个数组的第三个索引等等。我想让我的新主数组包含这个数据集中每列的数组。

谢谢!

回答

1

我已经使用了临时数组newArray,它将容纳最终的多维数组。 (假设:如问题示例所示,主数组大小和内容数组的大小应该相同)。

var newArray = []; 
for(var i = 0; i < array.length; i++) { 
    for(var j= 0; j < array.length; j++) { 
     newArray[j] = newArray[j] || []; 
     newArray[j][i] = array[i][j]; 
    } 
} 
console.log(newArray);