У меня есть MVCArray для хранения моего пути ломаной линии, но мне нужно очистить MVCArray, когда пользователь меняет свой выбор. Соответствующий код ниже.
routePoints = new google.maps.MVCArray();
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
markersArray = eval("(" + xmlhttp.responseText + ")");
removeLines();
for (var i = 0; i < markersArray.length; i++) {
var address = new google.maps.LatLng(markersArray[i][0], markersArray[i][1]);
routePoints.insertAt(routePoints.length, address);
}
routePath = new google.maps.Polyline({
path: routePoints,
strokeOpacity: 1.0,
strokeWeight: 2,
map: map,
});
}
}
Функция removeLines () находится ниже. Я пробовал много разных версий этой функции (while loop, routePoints.pop (), устанавливая routePoints.length в 0), но ничего не очистило MVCArray. Кстати, полилинии отображаются правильно, но как только пользователь меняет свой выбор, мне нужно удалить предыдущие полилинии с карты. Заранее спасибо.
function removeLines() {
if (routePoints) {
for (var i=0; i < routePoints.length; i++) {
routePoints.removeAt(i);
}
}
}