如何在Javascript中解析Json结果
How to Parse Json Result in Javascript
我有json结果我有代码,但它只适用于唯一的键在我的数据中,每个值都有不同的键
请帮我
{
"images": [
{
"time": 2.86091,
"transaction":
{
"status": "Complete",
"subject": "test2",
"confidence": 0.77,
"gallery_name": "gallerytest1",
},
"candidates": [
{
"subtest1": "0.802138030529022",
"enrollment_timestamp": "1416850761"
},
{
"elizabeth": "0.802138030529022",
"enrollment_timestamp": "1417207485"
},
{
"elizabeth": "0.777253568172455",
"enrollment_timestamp": "1416518415"
},
{
"elizabeth": "0.777253568172455",
"enrollment_timestamp": "1416431816"
}
]
} ]
}
我想从中解析所有catidate及其值伊丽莎白=0.77777subtest1=0.802138030529022
JSON已经被"解析"为Javascript,因为JSON意味着Javascript对象符号。如果你的问题是你不知道如何循环通过JSON对象的候选对象,下面是你的方法:
var candidates = jsonObject.images[0].candidates
for (var key in candidates) {
alert(jsonObject[key]);
}
只需简单地将jsonObject
引用到变量var jsonData
,然后使用简单循环根据json
结构遍历复杂的jsonObject
var jsonData = {.....} // Your JSON Object that you added in your Question.
这里jsonData
包含复杂的jsonObject
现在通过json元素进行迭代。
for(i=0; i < jsonData.images.length; i++){ //iterate throughout the Images Node Array.
var candidates = obj.images[i].candidates; //Get the Candidate Node of each Image.
for(j=0; j < candidates.length; j++){ //iterate throughout the Candidates Node Array.
console.log(candidates[j]); // get the each Candidate to print on Console log of Web Browser.
}
json字符串中有错误,请检查此行:"gallery_name": "gallerytest1",
字符CCD_ 8是问题所在。
解析的代码示例:
var data = JSON.parse(jsonString);
alert(data["images"][0]["candidates"][0]["subtest1"]);
更新:
下面是一个如何使用dinamic属性的示例。
var jsonData = JSON.parse(jsonString);
for(i=0; i < jsonData["images"].length; i++) { // foreach image
var candidates = jsonData["images"][i]["candidates"]; // array of candidates
for (j = 0; j < candidates.length; j++) { // foreach candidate
var candidate = candidates[j]; // single candidate
for (var key in candidate){ // foreach candidate property
// this if condition is required when working with for loop on this way.
// for more visit http://stackoverflow.com/questions/9329446/for-each-over-an-array-in-javascript
if (typeof candidate[key] === 'function') {
continue;
}
alert("Key: " + key + "'nValue: " + candidate[key]);
}
}
}
相关文章:
- 对于每个json结果,使用类jquery添加css
- 在Ionic'中显示JSON结果;s系列重复
- 如何将JSON结果设置为'src'共'img'以在ASP.NET MVC4中显示图像
- 获取json结果的身份验证问题
- 无法在AJAX成功访问中显示JSON结果
- jQuery 循环 JSON 结果,对象作为值
- json结果显示第一个值
- node.js+MySQL;JSON结果-回调问题&没有响应客户端
- 我无法通过AJAX获得嵌套的JSON结果
- 我如何用jquery读取简单的json结果,以及如何发布新的结果
- onclick在视图中显示重复的json结果
- 如何在Javascript中解析Json结果
- 如何使用javascript将json结果转换为数组
- 调用.ajax方法得到未定义的json结果,返回json格式列表<字符串>
- 如何将自定义字段添加到Json结果-ASP.NET MVC
- 如何提醒我的 json 结果
- 无法在iPhone应用程序上使用PhoneGap和javascript获取JSON结果,但使用相同的代码在Android
- 以 json 结果的形式返回对象列表
- 如何使用 JQuery 以表格形式打印通用 json 结果
- jquery-ui 自动完成仅允许从多个 JSON 结果中按名称搜索