如下代码为什么不能实现二维数组的转置??<html>
<body>
<script language="javascript">
var a=[[5,4,5,4,5,5,1],['fd',45,3.6,7,22,56,7],[4,2,5,'gshshgjh',45,525,2]];
var b=[];for(var i=0;i<a.length;i++){
for(var j=0;j<a[i].length;j++){
b[j][i]=a[i][j];
}
}
for(var i=0;i<a.length;i++){
for(var j=0;j<a[i].length;j++){
document.writeln(j[i][j]);
}
document.writeln("<br/>");
} </script>
</body> </html>

解决方案 »

  1.   

    <html>
    <body>
    <script language="javascript">
        var a = [[5, 4, 5, 4, 5, 5, 1], ['fd', 45, 3.6, 7, 22, 56, 7], [4, 2, 5, 'gshshgjh', 45, 525, 2]];
        var b = [];    for (var i = 0; i < a.length; i++) {
            b[i] = [];
            for (var j = 0; j < a[i].length; j++) {
                b[i][j] = a[i][j];
            }
        }
        for (var i = 0; i < a.length; i++) {
            for (var j = 0; j < a[i].length; j++) {
                document.writeln(b[i][j]);
            }
            document.writeln("<br/>");
        } </script>
    </body> </html>
      

  2.   

    <html>
    <body>
    <script language="javascript">
    var a=[[5,4,5,4,5,5,1],['fd',45,3.6,7,22,56,7],[4,2,5,'gshshgjh',45,525,2]];
    var b=[];for(var i=0;i<a.length;i++){
    b[i] = [];
    for(var j=0;j<a[i].length;j++){
    b[i][j] = a[i][j];
    }
    }
    for(var i=0;i<a.length;i++){ 
    for(var j=0;j<a[i].length;j++){
    document.writeln(b[i][j]);
    }
    document.writeln("<br/>");
    } </script>
    </body> </html>
    这个意思?
      

  3.   

    这不是表格啊,这哪有行和列?
    var a=[[5,4,5,4,5,5,1],['fd',45,3.6,7,22,56,7],[4,2,5,'gshshgjh',45,525,2]];
    你就说这样的数组你要交换完后是什么样的?
      

  4.   

    我想我明白你意思了,是不是下面这样的?
    <html>
    <body>
    <script language="javascript">
        var a = [[5, 4, 5, 4, 5, 5, 1], ['fd', 45, 3.6, 7, 22, 56, 7], [4, 2, 5, 'gshshgjh', 45, 525, 2]];
        var b = [];
        for (var j = 0; j < a[0].length; j++) {
            b[j] = [];
            for (var i = 0; i < a.length; i++) {
              
                    b[j][i] = a[i][j];
            }
        
        }
            for (var i = 0; i < b.length; i++) {
                for (var j = 0; j < b[i].length; j++) {
                document.writeln(b[i][j]);
            }
            document.writeln("<br/>");
        }  </script>
    </body>  </html>
      

  5.   

    就是没弄懂
    for (var j = 0; j < a[0].length; j++) {
      b[j] = [];
    为什么这里要这样子??
      

  6.   

    var b = [];//这是一维数组
       for (var j = 0; j < a[0].length; j++) {
       b[j] = [];一维数组b[索引]=[]比如吧就是在一维数组b[0]再给它申明一个数组就成了二维数组