在地图上获取可见标记的最有效方法?

时间:2017-07-30 11:54:11

标签: javascript algorithm google-maps data-structures

我的地图上有数十/数十万个标记,目前存储在数组(docs for Marker Class)中。我需要找到当前地图范围内的标记。

最明显的方法是遍历整个数组并检查地图边界是否包含标记,但这不是一种有效的方法。

哪种数据结构和/或算法可以帮助解决问题?

1 个答案:

答案 0 :(得分:0)

我会将Latitude和Longitude值存储在某种数据库中,然后让数据库执行所有计算。然后你要做的就是等待ajax响应(这需要大约10到400毫秒),然后用你查询中返回的新标记替换标记。渲染50个标记比在地图上跟踪数十万个标记的位置要快得多,同时也循环遍历它们以查看它们是否应该显示。这也允许您的单线程Javascript专注于UI而不是复杂的计算。