1

このコードは、一連の dom 要素からスパース配列をスクレイピングするために作成しました。1 次元で実行するとコードは機能しますが、2 次元では失敗します。足りないものはありますか?

23         function initCellHover(){
24                 $cells.each(function(){
25                         var arrayX = $(this).position().left/cellWidth;
26                         var arrayY = $(this).position().top/cellHeight;
27                         var arrayValue = $(this);
28                         cellLookup[arrayX][arrayY] = arrayValue;
29                 });     
30         }  
4

1 に答える 1

5

28 行目で、undefined のプロパティを参照している可能性があります。配列にプロパティが既に存在するかどうかを確認し、必要に応じて追加することは理にかなっています。

cellLookup[arrayX] = cellLookup[arrayX] || [];
cellLookup[arrayX][arrayY] = arrayValue;
于 2012-05-27T08:33:29.300 に答える