Am următoarea Geocodificarea metoda de mai jos asincrone, funcționează conform așteptărilor luând o adresă dintr-o matrice personalizat obiect am, problema mea este cartarea rezultatul înapoi la opoziție [i], care a tras această metodă, a se vedea rezultatele da-mi doar înapoi o adresă formatat, care diferă de cea pe care am inputed, „Google adaugă unele coduri din zona, St schimbă la stradă etc.“ așa că atunci când am obține aceste rezultate înapoi am nici o modalitate de a se potrivi cu noua lat și Lng coordonatele am ajuns la fiecare obiect din cauza naturii asincrone a acestei metode, iar rezultatele nu se întorc în ordine, Orice idee ce aș putea face aici?
Mulțumiri.
Editare: gândurile mele s-ar crea o modalitate de a obține rezultatele înapoi în ordine, schimba acest lucru Sincron, nu este ideal eu știu și nu pot găsi nici un exemplu.
Funcția iterateAndAddress (objArray) {
for(var i=0; i< objArray.length; i++) {
var address = objArray[i].BillingStreet +' '+objArray[i].BillingCity+' '+objArray[i].BillingCountry;
var geocoder = new google.maps.Geocoder();
console.log('Address = '+address);
if(geocoder) {
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
//console.log(results);
var lat = results[0].geometry.location.lat();
var lon = results[0].geometry.location.lng();
console.log('Address : '+results[0].formatted_address);
}else if(status == 'OVER_QUERY_LIMIT') {
}
else{
}
});
}
}
}













