Анонимные функции
function getAddress(position) { var address; var geocoder = new google.maps.Geocoder(); var latLng = new google.maps.LatLng(position.lat, position.lng); geocoder.geocode({'latLng': latLng}, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { address = { district: results[4].address_components[0].long_name, city: results[1].address_components[0].long_name, street: results[0].address_components[1].long_name, houseNumber: results[0].address_components[0].long_name, postalCode: results[2].address_components[0].long_name }; } else { address = 'Geocoder failed due to: ' + status; } }); return address; } Всем привет. Подскажите пожалуйстка: как сделать так, чтобы моя функция возвращала то, что произошло в середине функции, которая в свою очередь является вторым параметром функции geocoder.geocode? На деле возвращается то, что я указываю в начале при обьявлении переменной address. |
Цитата:
afterConfig = function(address){ dealWith(address) } function getAddress(position, afterConfig) { var address; var geocoder = new google.maps.Geocoder(); var latLng = new google.maps.LatLng(position.lat, position.lng); geocoder.geocode({'latLng': latLng}, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { address = { district: results[4].address_components[0].long_name, city: results[1].address_components[0].long_name, street: results[0].address_components[1].long_name, houseNumber: results[0].address_components[0].long_name, postalCode: results[2].address_components[0].long_name }; } else { address = 'Geocoder failed due to: ' + status; } afterConfig(address) }); } getAddress(myPosition, afterConfig) |
И да, анонимные ф-ции тут не при чем.
|
так и сделал, спасибо
|
Ну можешь, как вариант, зайти через сайт http://advanced.name/ru и попробовать )))
|
Часовой пояс GMT +3, время: 00:53. |