Jeg har følgende geokode asynkron metode brøl, det fungerer som forventet tatt i en tale fra en egendefinert objekt Array jeg har, mitt problem er kartlegging av resultatet tilbake til objekt [i] at sparken som metode, se resultatene bare gi meg tilbake en formatert adresse som er forskjellig fra den jeg sent inn, Google legger til noen retningsnumre, endrer St til street etc. så når jeg får disse resultatene tilbake jeg har ingen mulighet til å matche den nye Lat og Lng koordinerer jeg har fått på hvert objekt på grunn av den asynkrone natur av denne metoden, og resultatene ikke returnerer i orden, Noen ide hva jeg kan gjøre her?
Takk.
Edit: mine tanker ville være å skape en måte å få de resultatene tilbake i rekkefølge, endre dette til Synkron, ikke ideelt jeg vet, og jeg kan ikke finne noen eksempler.
funksjon 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{
}
});
}
}
}













