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

时间:2012-05-27 08:29:30

标签: javascript jquery multidimensional-array sparse-matrix

我编写了这段代码来从一系列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         }  

1 个答案:

答案 0 :(得分:5)

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

cellLookup[arrayX] = cellLookup[arrayX] || [];
cellLookup[arrayX][arrayY] = arrayValue;