2017-08-13 45 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

,所以這應該方法,我寧願消除所有的空間,同時從控制檯的輸入。 –