我在我的Nativescript代码中读取来自Google API的地理编码。结果是这样的:
{"_bodyInit":"{\n \"results\" : [\n {\n \"address_components\" : [\n {\n \"long_name\" : \"Cooper City\",\n \"short_name\" : \"Cooper City\",\n \"types\" : [ \"locality\", \"political\" ]\n },\n {\n \"long_name\" : \"Broward County\",\n \"short_name\" : \"Broward County\",\n \"types\" : [ \"administrative_area_level_2\", \"political\" ]\n },\n {\n \"long_name\" : \"Florida\",\n \"short_name\" : \"FL\",\n \"types\" : [ \"administrative_area_level_1\", \"political\" ]\n },\n {\n \"long_name\" : \"United States\",\n \"short_name\" : \"US\",\n \"types\" : [ \"country\", \"political\" ]\n }\n ],\n \"formatted_address\" : \"Cooper City, FL, USA\",\n \"geometry\" : {\n

从下面的代码中读取时:
fetchModule.fetch(geoPlace, {
method: "GET"
})
.then(function(response) {
alert({title: "GET Response", message: JSON.stringify(response), okButtonText: "Close"});
console.log(JSON.stringify(response))
}, function(error) {
console.log(JSON.stringify(error));
})我的问题是,例如,如何访问"Cooper City"?
我尝试过(但没有成功):
console.log(response.value["results"])
console.log(response[0])
console.log(response.results[0])发布于 2017-12-15 09:50:50
对响应进行修改,我发现它不是一种成功的JSON格式,您应该寻找将其转换为JSON格式的方法,以便能够使用其代码并获得所需的标记。
发布于 2017-12-15 21:38:05
下面是我如何找到解决方案的:
var m = JSON.parse(response._bodyInit)
console.log(m.results[0].address_components[1].short_name)由于某种原因,我不知道最初的结果不是作为有效的JSON返回的。
https://stackoverflow.com/questions/47822479
复制相似问题