2017-08-24 81 views
0

它基本上是一個出界的檢查未定義的值,壽」我正在瞭解如何在一個二維數組處理undefined值的問題。處理在二維數組

我到目前爲止所嘗試的是檢查列和行索引是否存在if(!arr[x][y]),檢查兩者是否未定義if(arr[x][y] === undefined)並最終檢查索引是否大於數組長度-1(數組爲10x10) 。上述的

都沒有工作,投入的條件,即使togheter我仍然得到

TypeError: Cannot set property '' of undefined

有沒有辦法來處理這個?

編輯:

TypeError出現在if (arr[x + i * dx][y + i * dy] === undefined)更精確地在其中[y + i * dy]xy列和行索引,dxdy是0或1的值,因此它可以垂直或水平地查看。

如果我垂直檢查,我沒有得到任何錯誤,它只有當我水平檢查我遇到TypeError

+0

這陣列不是如何2D工作。它們基本上只是數組的數組:arr [x] [y]是(arr [x])[y]。 –

+0

你能告訴我們你如何定義(或填充)'arr'嗎? –

+0

@DenysSéguret我的錯誤。 –

回答