Javascript 谷歌地图地理编码-结果相关性

Javascript 谷歌地图地理编码-结果相关性,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我正在使用谷歌地图Javascript API的基本功能 来自谷歌的代码示例: 正如您所知,当我们键入街道名称时,即使我们有几个结果,上面的示例也只显示了一个。我已经将其更改为循环所有结果,并且效果良好 我的问题是: geocoder.geocode结果是否按任何标准排序 如果回答是“是”,是否可以按当前用户位置的最相关/最接近位置对结果进行排序?(我将传递当前用户位置) 非常感谢据我所知,最近的一件事是使用区域偏见:如果您使用了错误的API,请尝试使用Google Places API。这按

我正在使用谷歌地图Javascript API的基本功能

来自谷歌的代码示例:

正如您所知,当我们键入街道名称时,即使我们有几个结果,上面的示例也只显示了一个。我已经将其更改为循环所有结果,并且效果良好

我的问题是:

geocoder.geocode
结果是否按任何标准排序

如果回答是“是”,是否可以按当前用户位置的最相关/最接近位置对结果进行排序?(我将传递当前用户位置)


非常感谢

据我所知,最近的一件事是使用区域偏见:

如果您使用了错误的API,请尝试使用Google Places API。这按受欢迎程度排序(首选)


或者,您可以使用一些代码在结果中循环,并找到与原始位置的距离。然后,您可以按距离排序(很有效,但我认为受欢迎程度是您想要的)

您是否询问是否可以按与用户当前位置的距离对结果进行排序?如果是,你可以。嗨!第一个问题是:当我得到一个以上的结果时,数组是按相关性排序还是按其他排序?关于第二个问题,我不想手动排序该列表,我想知道谷歌是否有任何选项可以告诉你:地理编码这个地址的帐户在我的当前位置。因为如果你搜索像“自由之路”这样的东西,全球有好几条路,所以我想找到最近的“自由之路”。
var geocoder;
var map;
function initialize() {
  geocoder = new google.maps.Geocoder();
  var latlng = new google.maps.LatLng(-34.397, 150.644);
  var mapOptions = {
    zoom: 8,
    center: latlng
  }
  map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
}

function codeAddress() {
  var address = document.getElementById('address').value;
  geocoder.geocode( { 'address': address}, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
      map.setCenter(results[0].geometry.location);
      var marker = new google.maps.Marker({
          map: map,
          position: results[0].geometry.location
      });
    } else {
      alert('Geocode was not successful for the following reason: ' + status);
    }
  });
}

google.maps.event.addDomListener(window, 'load', initialize);