2017-08-13 82 views
1

我已经搜索并尝试在stackoverflow和其他网站上给出的每一个可能的答案,但我不能使用[row_no] .length.I得到列长度我得到运行时错误,而我这样做,但是当我跑2个循环来打印2D矩阵,所有东西都打印正确。 我的代码块是在这里: -无法获得JavaScript中的2d矩阵的列长度?

var a=[],i,j,s='',k=0; 
for(var i=0;i<4;i++) 
{ 
    s=readline().split(" "); 
    a[i]=[]; 

    for(var j=0;j<s.length;j++) 
    { 
     a[i][j]=s[j]; 
    } 
} 

INT COL = [3]。长度; //上ideone.com给运行时错误。

我也给链接到我的代码: - https://ideone.com/eExitl

此代码正确打印2d矩阵,但给出运行时错误的[row_no] .length。

for(i=0;i<a.length;i++) 
{ 
    print(a[i].length); 
    for(j=0;j<a[i].length;j++) 
    s+=a[i][j]+' '; 
    print(s); 
    s=''; 
} 

在此先感谢!

+0

哪里是readline的定义? –

+0

@ ChrisCousins,它是一个内置的方法,通过控制台从用户接受输入。我写的循环正确地取矩阵,但是当我打印一个[0] .length时,它会给出错误的输出。请仔细看看这个问题。我的代码链接是:-https://ideone.com/aRMD7F。请访问它一次。 –

回答

0

一些编码习惯很难失去。

int col=a[3].length; 

int?在JavaScript中,您不会直接设置类型,因为您确实知道与其他强类型语言相反。你的意思是varlet肯定:

let col=a[3].length; 
+0

,对不起,我有wriiten int但仍然使用var或让它没有给出正确的输出,请访问我的ideone链接:-https://ideone.com/aRMD7F –

+0

@SahilAggarwal您输入的空间太多,所以分裂让太多元素。看看它[这里](http://ideone.com/f5ZDK1) – Isac

+0

,所以这应该方法,我宁愿消除所有的空间,同时从控制台的输入。 –