js笔记(3)--js实现数组转置(两种方法)

时间:2022-01-03 12:02:20
js实现数组转置
第一种方法:
<script>
    window.onload=function(){
    var array1=[[11,22,33,333],[44,55,66,666],[77,88,99,999]];
    var array2=new Array();
    console.log(array1.length);//3
    console.log(array1[0].length);//4
    console.log(array1)
//确定新数组有多少行
for(var i=0;i<array1[0].length;i++){
 array2[i] = [];
}
//给新数组赋值
    for(var i=0;i<array1.length;i++){
        for(var j=0;j<array1[i].length;j++){
            array2[j][i]=array1[i][j];     
        }  
        console.log(array2)
    }
    //输出转置数组
    for(var i=0;i<array2.length;i++){
        for(var j=0;j<array2[i].length;j++){
            document.write(array2[i][j]+",");
        }
        document.write("</br>");
    } 
    }
</script>
第二种使用js内置的map方法

<script>

window.onload=function(){

var array1=[[11,22,33,333],[44,55,66,666],[77,88,99,999]];

// console.log(array1.length);//3

// console.log(array1[0].length);//4

// console.log(array1)

var newArray = array1[0].map(function(col, i) {

  return array1.map(function(row) {

    return row[i];

  })

});

console.log(newArray)

}

</script>