我有一个包含大约五十万个对象的数组,每个对象看起来像这样:
{
"a": "50.400343" // latitude coordinate
"b": "-1.434934" // longitude coordinate
"c": "fr234NFDD" // reference to talk to API
}
我需要创建一个循环遍历每个对象的函数,并检查它们是否在屏幕的坐标内。一个直观的例子:
我需要在地图上显示< 1秒,所以它需要高效(记住这个功能将执行约500,000次操作)。
有什么想法吗?
答案 0 :(得分:0)
function find(rect, list) {
var count = 0;
for (var i = 0; i < half_a_million.length; i++) {
if (half_a_million[i].a >= rect.x1 && half_a_million[i].a <= rect.x2 && half_a_million[i].b >= rect.y1 && half_a_million[i].b <= rect.y2) {
console.log(half_a_million[i].c + ' is a solution.');
count += 1;
}
}
console.log('All solutions found: ' + count);
}