Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Получение значения (https://javascript.ru/forum/events/47557-poluchenie-znacheniya.html)

uchenik111 28.05.2014 14:50

Получение значения
 
Доброго времени суток.

Пишу скрипт по работе с яндекс картой из одного приложения.

Столкнулся с проблемой получения значения из вызываемой функции.

Код:
function getAdress(Lat,Lng){
myGeocoder = ymaps.geocode([Lat, Lng],{results: 1, json: true});

myGeocoder.then(
//это обработчик успешного поиска
function (res) {
firstGeoObject = res.GeoObjectCollection.featureMember[0];
if(firstGeoObject != null){
//adress- глобальная переменная
adress=firstGeoObject.GeoObject.metaDataProperty.G eocoderMetaData.text;
}
}
);

return adress;
}

проблема в том, что получается нужное значение только со второго раза, то есть return отрабатывает раньше чем переменная изменяется

как можно победить сложившуюся ситуацию?

Erolast 28.05.2014 18:02

Там асинхронность походу. Функция вообще не должна ничего возвращать. Делай все, что тебе нужно, в коллбеке.


Часовой пояс GMT +3, время: 02:47.