获得自由;不同地方的经度值到一个值

时间:2013-08-21 08:45:18

标签: javascript jquery google-maps-api-3

我试图找到一组纬度经度值并将其分配给变量。 我的代码看起来像这样

var k = findLattitudeLongitude("Italy");
console.log(k) // comes undefined
function findLattitudeLongitude(input){
    var geocoder = new google.maps.Geocoder();
    geocoder.geocode( { 'address': input}, function(results, status) {
      var location = results[0].geometry.location;
        return location;

    });
   }

但它未定义。达到上述要求的最佳方法是什么。还有其他方法吗?

2 个答案:

答案 0 :(得分:1)

奇怪的是函数返回undefined,你能做的就是调用另一个函数,这种方式对我很好,你可以像下面的代码或整个对象一样传递纬度和经度的参数

$( document ).ready(function() {
function   getlatlan(){
geocoder = new google.maps.Geocoder();
geocoder.geocode( { 'address': "Italy"}, function(results, status) {
  if (status == google.maps.GeocoderStatus.OK) {
         dosome(results[0].geometry.location.nb,results[0].geometry.location.mb)
     return true;

    ;
}});
}
function dosome(lat,lng){
console.log(lat,lng);
}
getlatlan();
});

答案 1 :(得分:1)

实际上你所做的是正确的。

  

问题是从Google geocoder收到的回复需要一些时间。

为了更好地理解,我创建了fiddle