Javascript 如何从谷歌地图地理编码返回地址类型?
我目前正在使用谷歌地图api对地图上的位置进行地理编码,并返回街道地址 我当前返回的地址包含以下代码:Javascript 如何从谷歌地图地理编码返回地址类型?,javascript,google-maps,geocoding,Javascript,Google Maps,Geocoding,我目前正在使用谷歌地图api对地图上的位置进行地理编码,并返回街道地址 我当前返回的地址包含以下代码: function codeLatLng(markerPos) { geocoder.geocode({'latLng': markerPos}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) {
function codeLatLng(markerPos) {
geocoder.geocode({'latLng': markerPos}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
//Set markerAddress variable
var markerAddress = results[0].formatted_address;
alert(markerAddress);
...
但是,如果我不想返回格式化的地址,而是使用地址组件类型返回更详细的版本,如何返回某些地址值,如:
感谢帮助。
long\u name
是地理编码器返回的地址组件的全文描述或名称
function codeLatLng(markerPos) {
geocoder.geocode({'latLng': markerPos}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
//Set markerAddress variable
var markerAddress = results[0].long_name;
alert(markerAddress);
...
请问,您为什么要检查
结果[1]
,然后使用结果[0]
(或者这只是一个我应该忽略的输入错误)
只要状态
为正常
,至少会有一个结果。
否则,状态将是零结果
无论如何,您可以使用以下内容:
function codeLatLng(markerPos) {
geocoder.geocode({'latLng': markerPos}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var markerAddress = results[0].address_components[0].long_name
+ ' (type: ' + results[0].address_components[0].types[0] + ')';
alert(markerAddress);
您可以使用整个address\u组件玩很多游戏
array,玩得开心!)
为了获得更多乐趣,请查看位于hmm的谷歌地图API v3地理编码器工具的(源代码)。。。这提醒了“未定义”任何其他想法