Я выполняю локальный поиск в Google и хочу вернуть значение lat / long через объект.
Сам поиск Google работает нормально.
При проверке (с использованием console.log или alert ()) в самом объекте поле результатов выглядит как заполненное ОК.
Однако при проверке экземпляра объекта (созданного до выполнения обратного вызова) результат будет пустым. Я знаю, что мне не нужна функция доступа - конечный результат в любом случае одинаков.
Чего-то фундаментального здесь не хватает? Спасибо!
function GeoSearch() {
this.results = [];
this.searchComplete = function(localSearch) {
if(localSearch.results[0]) {
var resultLat = localSearch.results[0].lat;
var resultLng = localSearch.results[0].lng;
this.results = localSearch.results[0].lat;
}
}
this.getResults = function() {
return this.results;
}
}
function populateCoords(postcode) {
var localSearch = new google.search.LocalSearch();
var gs = new GeoSearch();
localSearch.setSearchCompleteCallback(gs, gs.searchComplete, [localSearch]);
localSearch.execute(postcode + ", UK");
alert(gs.getResults());
}