for (var f=0; f<group.length; f++) {
var longitude = group[f][1];
var latitude = group[f][0];
var popupText = group[f][2];
var markerLocation = new L.LatLng(longitude,latitude);
var marker = new L.Marker(markerLocation);
mymap.addLayer(marker);
marker.bindPopup(popupText);
}
мой массив групп находится в этом формате
[0]
[0]53.522753
[1]-1.126298
[2]ASB
моя консоль говорит
Uncaught Error: Invalid LatLng object: (undefined, 53.522731)
at new M (leaflet.js:5)
at create_marker (hello.html:212)
at JSON_callback (hello.html:169)
at XMLHttpRequest.xmlhttp.onreadystatechange (requests.js:26)
группа уставок
var group = [];
var n = 3;
for (var i = 0, j = 0; i < current_lat_lng.length; i++) {
if (i >= n && i % n === 0)
j++;
group[j] = group[j] || [];
group[j].push(current_lat_lng[i])
}
Я думаю, что объект правильный? но я не уверен, почему это происходит. любая помощь приветствуется.
Попробуйте следующее:
for (var f=0; f<group.length; f++) {
var longitude = group[f][1];
var latitude = group[f][0];
var popupText = group[f][2];
if (longitude && latitude && popupText) {
L.marker([latitude, longitude]).bindPopup(popupText).addTo(mymap);
} else {
console.error('group[' + f + '] has invalid entries:');
console.error('longitude', longitude);
console.error('latitude', latitude);
console.error('popupText', popupText);
}
}
group[0][1]
?