我有一个应用程序,我正在使用Google Javascript地理编码API来获取地址的lat / lng。
代码类似于
geocoder = new google.maps.Geocoder()
geocoder.geocode({ 'address': query }, function(results, status) {
addresses = {};
$.each(results, function(index, value){
addresses[index] = {"lat":value.geometry.location.$a,"lng":value.geometry.location.ab}
})
});
一切都很好,花花公子,但问题是位置对象的属性名称会定期更改。每次他们改变,我的网站都会中断。
两次我不得不更改我的代码以适应google的地理位置api中奇怪的lat / lng属性名称更改。原来是Xa,Ya,然后我不得不改为Ya,Za,现在是$ a,ab。我没有看到这些变化背后有任何用户友好的逻辑。
有没有人知道为什么这些属性名称会发生变化,和/或我可以使用什么策略来获取lat / lng,同时避免因这些属性名称更改而导致的问题?
答案 0 :(得分:93)
使用记录的properties,它们不会更改
geometry.location是一个google.maps.LatLng对象,记录的方法是:
lat() number Returns the latitude in degrees.
lng() number Returns the longitude in degrees.