我正在玩crossfilter.js
,请参阅https://github.com/square/crossfilter/wiki/API-Reference和http://square.github.io/crossfilter/。
据说该库非常擅长快速处理数据。所以为了测试它,我首先创建了一个随机数数组,一个很大的,有一百万行。
function create_random_json(){
result = []
for (var i = 1000000 - 1; i >= 0; i--) {
result.push( { 'a': Math.random() , 'b' : Math.random() * 5 } )
}
return result
}
json_array = create_random_json()
df = crossfilter( json_array )
到目前为止一切顺利,但是当我尝试做一些基本的交叉过滤器时,事情变得非常错误。
df.dimension( function(d){ return d.total; });
RangeError: Maximum call stack size exceeded
我读过这个错误可能是由NaN
值引起的,但是我生成的所有值显然都是浮点数,所以我假设是其他原因导致了问题。有什么提示吗?