它基本上是一個出界的檢查未定義的值,壽」我正在瞭解如何在一個二維數組處理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]
和x
是y
列和行索引,dx
和dy
是0或1的值,因此它可以垂直或水平地查看。
如果我垂直檢查,我沒有得到任何錯誤,它只有當我水平檢查我遇到TypeError
。
這陣列不是如何2D工作。它們基本上只是數組的數組:arr [x] [y]是(arr [x])[y]。 –
你能告訴我們你如何定義(或填充)'arr'嗎? –
@DenysSéguret我的錯誤。 –