构建稀疏数组

时间:2012-05-29 21:57:43

标签: javascript highcharts

我有一个大数组(比如500个条目),但大多数值都是Null。我如何表示数组而不是[null, null ... 3, null, null, ...]

将数组传递给highcharts进行绘图。 Highcharts为数组中的每个元素绘制一个点,所以我真的不需要那些null

1 个答案:

答案 0 :(得分:4)

如果您将array[200]设置为某个内容,则不会像JavaScript一样出现在您身后并将array[0]设置为array[199]。数组自动稀疏。

问题是,如果你要求一个未初始化的元素,你会得到undefined而不是null?还是有其他问题吗?

如果它是undefined vs null的事情,那么只需在初始化之后添加null,然后使用循环,而不是将它们放在大文字blob中:

for (var i=0; i<array.length; ++i) { 
    if (typeof(array[i]) === 'undefined') { 
        array[i] = null; 
    } 
}

如果您希望null超出您初始化的内容,请将array.length替换为您需要的最大索引(+1,或者将<更改为<= })。