Мне нужно вернуть массив из функции в Javascript/jQuery, но функция возвращается до того, как массив был установлен (так как это вызов AJAX).
Мне было рекомендовано использовать обещание, но я не использовал их раньше и до сих пор не смог реализовать это в своем коде. Вот мой код:
mapClass.setLatLng = function(location, clubs) {
document.geoCodeRequestCompleteFlag = 0;
geocoder = new google.maps.Geocoder();
geocoder.geocode({'address' : location}, function(results, status) {
//console.log(results);
if(status === "OK") {
var latLngArray = [];
latLngArray.push(parseFloat(results[0].geometry.location.lat()));
latLngArray.push(parseFloat(results[0].geometry.location.lng()));
var sortedArray = mapClass.calculateDistances(clubs, latLngArray);
return sortedArray;
}
});
}
Как вы можете видеть, переменная sortedArray пуста, когда я возвращаюсь. Есть ли у кого-нибудь какие-либо идеи относительно того, как я могу добавить в него блокирующий код, чтобы гарантировать, что переменные массива установлены перед возвратом? благодаря