2011-10-04 102 views
6

我有以下阵列(代码是用Java编写的):如何在Java脚本中打印以下多维数组?

String[][] a = new String[3][2]; 
a[0][0] = "1"; 
a[0][1] = "2"; 

a[1][0] = "1"; 
a[1][1] = "2"; 

a[2][0] = "1"; 
a[2][1] = "2"; 

什么,我想要做的就是打印111222,我做到了这一点在Java中做这样的:

 for (int i=0;i < a[i].length;i++){ 
     for(int j=0;j <a.length;j++){ 
      System.out.print(a[j][i]); 
     } 
    } 

JavaScript中的这个相当于什么?

回答

8

这里是JavaScript中的等效代码(无它的空间不是java的脚本版本)

!编辑错过了循环的细节,现在固定

var a = []; 
a.push(["1", "2"]); 
a.push(["1", "2"]); 
a.push(["1", "2"]); 

for(var i = 0; i < a[i].length; i++) { 
for(var z = 0; z < a.length; z++) { 
    console.log(a[z][i]); 
} 
} 
+0

这是不对的,它会打印这样的数组(121212)我想要的是打印如下所示的111222 – Jimmy

+0

for循环位与java相同,因为你写的是 – megakorre

+0

我没有你奇怪地嵌套它真的是你想要的行为? – megakorre

2
for (i=0; i < a.length; i++) { 
    for (j = 0; j < a[i].length; j++) { document.write(a[i][j]); } 
} 

虽然这将是更聪明的所有串出加在一起,打印出来作为一个(可以添加到一个元素或提醒一下。)

+0

再次会打印出这样的阵列(121212)我想是打印类似的以下111222 – Jimmy

1
var a = []; 

a[0] = []; 
a[0][0] = "1"; 
a[0][1] = "2"; 

a[1] = []; 
a[1][0] = "1"; 
a[1][1] = "2"; 

a[2] = []; 
a[2][0] = "1"; 
a[2][1] = "2"; 

for (i = 0; i < a[i].length; i++) { 
    for (j = 0; j < a.length; j++) { 
     document.write(a[j][i]); 
    } 
} 
0
var arr =[ 
     [1,2,3], 
     [4,5,6], 
     [7,8,9] 
     ],arrText=''; 

     for (var i = 0; i < arr.length; i++) { 
      for (var j = 0; j < arr[i].length; j++) { 
       arrText+=arr[i][j]+' '; 
      } 
      console.log(arrText); 
      arrText=''; 
     } 

输出: enter image description here