Могу ли я спросить, почему вы проверяете results[1]
, а затем используете results[0]
(или это просто опечатка, которую я должен игнорировать)?
Пока status
равно OK
,будет как минимум один результат.В противном случае status
будет ZERO_RESULTS
.
В любом случае, вы можете использовать что-то вроде этого:
function codeLatLng(markerPos) {
geocoder.geocode({'latLng': markerPos}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var markerAddress = results[0].address_components[0].long_name
+ ' (type: ' + results[0].address_components[0].types[0] + ')';
alert(markerAddress);
Вы можете много играть со всем массивом address_components
, получайте удовольствие!:)
Чтобы получить еще больше удовольствия, ознакомьтесь с (исходным кодом) Google Maps API v3 Geocoder Tool по адресу http://gmaps -samples-v3.googlecode.com / svn / trunk /геокодер / v3-геокодер-tool.html