如何从此JSON响应中获取x和y坐标:
{
"spatialReference": {
"wkid": 4326,
"latestWkid": 4326
},
"candidates": [
{
"address": "Berlin",
"location": {
"x": 13.376910000000066,
"y": 52.516040000000032
},
}
}
我应该使用JSON.parse吗?不知道如何处理数组内部数组内的数组。
答案 0 :(得分:1)
假设您的变量名称为data
。
如果要打印第一个索引
console.log(data.candidates[0].location.x)
console.log(data.candidates[0].location.y)
如果您想要访问所有内容
for (var i = 0; i< data.candidates.length; i++){
console.log(data.candidates[i].location.x)
console.log(data.candidates[i].location.y)
}
如果您的data
是数组
然后
for (var j = 0; j < data.length; j++) {
for (var i = 0; i < data[j].candidates.length; i++) {
console.log(data[j].candidates[i].location.x)
console.log(data[j].candidates[i].location.y)
}
}
答案 1 :(得分:0)
您可能需要查看indexed collections上的文档。
在任何情况下,您都可以按如下方式访问坐标:
var response = {
"spatialReference": {
"wkid": 4326,
"latestWkid": 4326
},
"candidates": [{
"address": "Berlin",
"location": {
"x": 13.376910000000066,
"y": 52.516040000000032
}
}]
};
var coordinates = response["candidates"][0]["location"];
答案 2 :(得分:0)
使用JSON.parse
时,可以将此字符串转换为JS对象。
然后是哪个对象在哪个内部。
假设您赞美您的字符串为变量名jobs
。
var jobs = JSON.parse(myDataObject)
以下行将显示如何访问对象的每个部分。
console.log(jobs.spatialReference.wkid) //4326
console.log(jobs.candidates[0]location.x) //13.376910000000066
请注意,如果你说过
console.log(jobs.candidates[0])
这将返回整个对象
{
"address": "Berlin",
"location": {
"x": 13.376910000000066,
"y": 52.516040000000032
}
}