在地图

时间:2016-03-17 05:53:11

标签: javascript google-maps google-maps-api-3 memory-leaks google-maps-markers

已完成基本地图,其中放置了5000个标记。

使用谷歌地图默认标记:

var latLng = new google.maps.LatLng(50.509, -105.348);

var map = new google.maps.Map(document.getElementById('map_canvas'), {
  zoom: 4,
  center: latLng,
  mapTypeId: google.maps.MapTypeId.ROADMAP
});

for(i=0; i<5000; i++) {
    new google.maps.Marker({
        position: latLng,
        map: map,
    });
    var lat = latLng.lat()
    ,       lng = latLng.lng()+0.005;
     latLng = new google.maps.LatLng(lat, lng);
 }

https://jsfiddle.net/jeev140/wa3r9zp2/7/

内存使用:48.8 MB

将标记用于标签:

var latLng = new google.maps.LatLng(50.509, -105.348);

var map = new google.maps.Map(document.getElementById('map_canvas'), {
  zoom: 4,
  center: latLng,
  mapTypeId: google.maps.MapTypeId.ROADMAP
});

for(i=0; i<5000; i++) {
    new MarkerWithLabel({
        position: latLng,
        map: map
    });

    var lat = latLng.lat()
    ,   lng = latLng.lng()+0.005;
    latLng = new google.maps.LatLng(lat, lng);
}

https://jsfiddle.net/jeev140/n0xhd38f/13/

内存使用:279 MB

  

知道如何使用带标签的标记来解决这种内存消耗问题吗?

0 个答案:

没有答案