将JSON数据放入变量中
Placing JSON data in a variable
我正在创建一个自动完成表单,根据您的邮政编码填写您的位置。这是代码,我必须得到一个JSON与基于我的邮编信息:
var client = new XMLHttpRequest();
client.open("GET", "http://api.zippopotam.us/nl/1012", true);
client.onreadystatechange = function() {
if(client.readyState == 4) {
// alert(client.responseText);
var jsonObj = [client.responseText]
};
};
client.send();
现在我只需要json的位置条目。但由于某些原因,我不知道如何在变量中得到它。基本上我的目标是得到这样的东西:
var location = 'Amsterdam'
谢谢!
我已经检查了请求GET到http://api.zippopotam.us/nl/1012
的响应,这是响应:
{
"post code" : "1012",
"country" : "Netherlands",
"country abbreviation" : "NL",
"places" : [{
"place name" : "Amsterdam Binnenstad en Oostelijk Havengebied",
"longitude" : "4.9027",
"state" : "Noord-Holland",
"state abbreviation" : "NH",
"latitude" : "52.3666"
}
]
}
所以你需要做如下的事情:
var jsonResponse= JSON.parse(client.responseText);
var locations=jsonResponse.places; //an array!
if (places.length) {
var firstLocation=locations[0]['place name'];
}
您可以张贴您从XML请求返回的内容吗?要在javascript中解析json,可以使用:
var jsonraw = JSON.parse(jsonobj)
这样,你可以从json中选择一些东西:
var location = jsonraw['location']
将location
替换为json返回的内容
使用JSON.parse
函数:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse
client.onreadystatechange = function() {
if(client.readyState == 4) {
var jsonObj = JSON.parse(client.responseText);
};
};
,它不会伤害包装与try
,只是以防服务器不返回一个有效的json
相关文章:
- AngularJS-在JSON选择器中使用变量名
- 将Json作为变量加载到jsTree中
- 使用JSON文件中的变量(字符串)填充文本区域
- js-获取带有变量的json
- 如何在AngularJS-ng重复循环中将长JSON路径缩短为变量
- 如何将JSON数据转换为变量,解析并输出为HTML
- 当JSON数据=变量时,需要执行循环
- 我想将查询字符串变量添加到JSON名称/值对中
- 获取多维JSON变量的行数
- 如何通过解析JSON文件来分配JavaScript变量
- 如何将HTML表单(JSON格式)中的数据分配给变量
- AJAX将JSON数组保存到多个JS变量中
- 格式化AJax调用返回的Json,并将其分配给javascript变量
- 通过组合变量在解析JSON时访问随机对象
- 想要将 JSON 字符串传递给 javascript 变量 [ JSON.parse(),eval()] 对我不起作用,
- 如何将字符串添加到变量json字符串中,以便在highstock图表中添加标志
- 在变量(json data)内循环
- 如何在一个变量Json href属性中插入值
- 高图表:解析多变量 JSON 数据
- 如何识别变量JSON.stringify