我正在尝试使用下面的代码
对大型数组的数组列表进行排序function _stInd(arr, ind){
return arr.sort(function(a, b) {
var _1 = a[ind];
var _2 = b[ind];
return (_1 < _2) ? -1 : (_1 > _2) ? 1 : 0;
});
}
请查看此bin以获取更多信息http://jsbin.com/UqEPOfa/3/edit
代码工作正常,它也可以排序。但问题是,如果我尝试根据一个索引对100多万个数组列表进行排序,那就太费了。
请建议我改进此代码
答案 0 :(得分:1)
我建议你做两件具体的事情:
考虑您需要排序的数据集,这通常有助于更快地进行排序。 (如评论中所述,如果其有限范围进行计数排序)
开始使用多线程(实际上称为工作线程)。是JAVASCRIPT DOEST现在支持。所以进行合并排序并开始部分显示结果。有关如何使用多线程的更多详细信息,请参阅工作线程。我能想到的一个很好的教程是http://ejohn.org/blog/web-workers/