现有:

var arr1 = [[30,-1,90],[70,100,-40],[39,29,6],[39,92,9]];
var arr2 = [];

理想变成如下:

var2 = [
   [30,70,39,39],
   [-1,100,29,92],
   [90,-40,6,9]
]

最笨的方法:

// 确定新bai数组du有多少zhi行
for(var i=0;i<arr1[0].length;i++){
arr2[i] = [];
}
//遍历原数组
for(var i=0;i<arr1.length;i++){
for(var j=0;j<arr1[i].length;j++){
arr2[j][i] = arr1[i][j];
  }
}

console.log(arr2);

一个高效方法:

var newArray = arr1[0].map(function (col, i) {
       return arr1.map(function (row) {
           return row[i];
       })
  });
console.log(newArray);

 

 运行结果:

js实现二维数组转置

 

相关文章:

  • 2022-12-23
  • 2021-08-26
  • 2021-11-15
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-02-24
  • 2021-09-30
  • 2021-09-07
  • 2021-09-27
  • 2021-12-04
  • 2022-12-23
相关资源
相似解决方案