{
"result": [
{
"id": "a258377906705d889422fd0b41c324b8",
"coordinate": {
"London": {
"x": 65.565709,
"y": 98.931235
},
"New_York": {
"x": 37.59751,
"y": 47.448718
}
}
}
]
}
如果我有一个类似上面的json,
如何循环获取x,y
坐标,如果我获得更多数据,我该如何获得?
如果我还希望将London
和New York
添加到array list
,我该怎么办(不能直接添加名称,因为有两个以上的数据) ?
答案 0 :(得分:0)
您可以解析它,然后使用JSON.parse( insert json here )
。
它的基本功能是它接收你的JSON字符串并将其转换为可用的JSON。
为了将新对象添加到另一个对象中,我建议使用Object.assign()
。
您可以在此处参考详细信息:Link
以下是该网站提供的示例:
var o1 = { a: 1 };
var o2 = { b: 2 };
var o3 = { c: 3 };
var obj = Object.assign(o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
console.log(o1); // { a: 1, b: 2, c: 3 }, target object itself is changed.
Object.assign()
将目标对象作为第一个参数,并使用我们提供的其他参数对其进行修改。
在您的情况下,您可以像这样更新您的对象:
var countryCoord = JSON.parse(yourjsondata); // parse the json that you included
Object.assign(countryCoord, newCoord, newCoord2,...etc); //this would update countryCoord alone
在线解析器:Link
答案 1 :(得分:0)
您必须处理json并了解获取JSONObject的位置以及获取JSONArray的位置,在此基础上您可以相应地解析JSON。
请参阅链接以获取有关使用Java中的嵌套项解析json对象的更多信息: