如何通过迭代在javascript中创建稀疏数组?

Ada*_*gel 1 javascript jquery sparse-matrix multidimensional-array

我编写了这段代码来从一系列dom元素中删除一个稀疏数组.当在一个维度中完成代码时,但是在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         }  
Run Code Online (Sandbox Code Playgroud)

Li0*_*liQ 5

在第28行中,您可能指的是未定义的属性.如果需要,检查数组中是否已存在属性并添加它是有意义的:

cellLookup[arrayX] = cellLookup[arrayX] || [];
cellLookup[arrayX][arrayY] = arrayValue;
Run Code Online (Sandbox Code Playgroud)