2014-12-17 3 views
1

Я использую Google Maps JavaScript API v3Google карта геокодирование API возвращает неправильный Lat/LNG ключ

Следующий код почти прямо из образца кода Google, но я испытываю странную проблему. Результаты [0] .geometry.location имеет ключи «k» и «D» вместо «lat» и «lng».

Любая идея, почему это может произойти?

mapui.geocoder.geocode({ 'address': address}, function(results, status) { 
     if (status == google.maps.GeocoderStatus.OK) { 
      console.log(results[0]); 
      var lat = results[0].geometry.location['lat']; 
      var lng = results[0].geometry.location['lng']; 
     } 
    }) 

notice the keys in locations

+1

Возможный дубликат [google.maps.Geocoder.geocode() Часто задаваемые имена геометрии.location lat/lng часто изменяются] (http://stackoverflow.com/questions/13499111/google-maps-geocoder-geocode-geometry- расположение однолатовый-LNG-свойство-имена-изменение-е) – geocodezip

ответ

4

Вы должны использовать lat() и lng() функции. Номер geometry.location - это класс .

var lat = results[0].geometry.location.lat(); 
var lng = results[0].geometry.location.lng(); 

https://developers.google.com/maps/documentation/javascript/reference#GeocoderGeometry https://developers.google.com/maps/documentation/javascript/reference#LatLng

Посмотрите в __proto__ в вашей консоли JavaScript, и вы найдете доступные методы.

Смежные вопросы