gpt4 book ai didi

javascript - gmaps Address Component Types 获取国家名称

转载 作者:行者123 更新时间:2023-11-30 07:18:46 25 4
gpt4 key购买 nike

我正在尝试使用 gmaps V3 提供的地址组件类型获取国家/地区名称。

我不知道如何以正确的方式获得它.. http://code.google.com/apis/maps/documentation/javascript/services.html#GeocodingAddressTypes

我想在这里提醒国家名称:

alert(results[1].address_component[country]);

这是代码..非常感谢任何帮助..谢谢

function codeLatLng() { 
var input = document.getElementById("latlng").value;
var latlngStr = input.split(",",2);
var lat = parseFloat(latlngStr[0]);
var lng = parseFloat(latlngStr[1]);
var latlng = new google.maps.LatLng(lat, lng);
if (geocoder) {
geocoder.geocode({'latLng': latlng}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
alert(results[1].address_component[country]);
} else {
alert("No results found");
}
} else {
alert("Geocoder failed due to: " + status);
}
});
}
}

最佳答案

一方面,address_components 应该是复数。由于打字错误,Google 文档对此具有误导性。

address_components 数组有一个地址的每个组成部分的项目。每个项目中的类型数组告诉您适用于每个地址组件的所有类型(例如:国家、地区等) - 所以您真正想要做的是找到将“国家”作为其中之一的 address_components 数组项目它的类型,然后取该数组项的 short_name 或 long_name。

此外,您可能并不总是有 results[1] 的值。这将假设至少返回了 2 个搜索结果。结果[0] 将是第一个。

举个例子:

var country;

for (i=0;i<results[0].address_components.length;i++){
for (j=0;j<results[0].address_components[i].types.length;j++){
if(results[0].address_components[i].types[j]=="country")
country = results[0].address_components[i].long_name
}
}

关于javascript - gmaps Address Component Types 获取国家名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2989323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com