嗨,我想从经度和经度谷歌地图 api 进行反向地理编码,为此我应该将 LonLat 添加到链接以获取 JSON 结构,这是 JSON 文件 http://maps.googleapis.com/maps/api/geocode/json?latlng=34.0235202,-6.8317697&sensor=true 的链接 我想从这个链接读取属性
formatted_address
这就是我获取 JSON 文件的方式
$.getJSON('http://maps.googleapis.com/maps/api/geocode/json?latlng='+loca.toString()+'&sensor=true', function(data) { alert(data.results.formatted_address[0]); }); }
但它向我显示了这个错误未捕获的类型错误:无法读取未定义的属性“0”
谢谢你帮助我
最佳答案
API 的响应如下所示:
{
results: [{
...
formatted_address: "39 Tirle Bank Way, Tewkesbury, Gloucestershire GL20 8ES, UK"
...
},
...
],
status: "OK"
}
您尝试像使用 [0]
访问数组一样访问 formatted_address
,但它实际上是一个字符串。 results
是一个数组。如果您只关心第一个结果,这应该对您有用:
$.getJSON('http://maps.googleapis.com/maps/api/geocode/json?latlng='+loca.toString()+'&sensor=true', function(data) {
if (data.status === 'OK') {
alert(data.results[0].formatted_address);
}
else {
alert('Error! ' + data.status)
}
});
关于javascript - 用javascript读取json外部链接的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26063447/