-1

我正在使用谷歌地图 API。我想用给定的地址获得经纬度。我做了这个

var geocoder = new google.maps.Geocoder();
    geocoder.geocode({ 'address': 'Stockholm' }, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            var latitude = results[0].geometry.location.nb;
            var longitude = results[0].geometry.location.ob;
            console.log(latitude);
        }
});

但是我让控制台日志反复运行。我只想让它运行一次,但我没有找到任何想法。

4

1 回答 1

0

声明一个新变量来显示地理编码是否已被调用,并在第一次发生这种情况时将其更改为 true。

var geoCalled = false;

var geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': 'Stockholm' }, function(results, status) {
  if (status == google.maps.GeocoderStatus.OK) {
    var latitude = results[0].geometry.location.nb;
    var longitude = results[0].geometry.location.ob;
    if (!geoCalled) {
      console.log(latitude);
      geoCalled = true;
    }
  }
});
于 2013-11-13T10:05:01.720 回答