2014-01-20 72 views
-2

在这里,我需要在JSON一些帮助解析JSON数组包含JSON对象中的JavaScript解析

[{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","cpu":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}] 

这是我的JSON格式。我如何迭代json。

data[0] = {"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}; // get from iteration 

,并从该对象 获取单个项目像时间= 0

+0

data [0] .Time?或者我没有正确理解你的问题... – RoneRackal

+0

'for(int i = 0,len = data.length(); i

+0

我想迭代json数组。从第一次迭代我需要每个元素的权利?这里第一个json对象从数组中检索,然后我想解析list.first中的每个元素:{“a”:0,“b”:“0”,“c”:“2A”,“s”:“一个“,”p“:0,”时间“:0}秒:时间= 0 –

回答

2

假设你的JSON字符串被称为s,先说

var a = JSON.parse(s); 

现在a是一个数组。您可以像其他任何数组一样遍历它。如果由于某种原因你想要做特别的东西与每个数组元素的Time财产,你的代码看起来就像这样:

for (var i = 0; i < a.length; i++) { 
    doSomethingWith(a[i].Time); 
} 

在循环中,您也可以访问a[i].aa[i].b,等等。这里没有什么特别的;这都是普通的JavaScript。

Protip:小心使用术语“JSON对象”。从这个问题中你不清楚你实际上是否有JSON字符串;你展示了一个普通的JavaScript对象。 JSON是一种文本格式。一旦用JSON.parse解析字符串,您就处于JavaScript的常规世界中,并且可以使用for-loops等来访问您的数据。你并不真正“从数组中检索JSON对象”。也就是说,可能有库似乎从JSON字符串中访问数据(类似于我认为的用于XML的Xpath),但实际上,只是解析字符串,然后得到一个JavaScript数组(或对象)。

+0

我的代码就像这样 \t \t var data ='$ {Data}'; \t \t alert(data); \t \t var a = JSON.parse(data); \t \t alert(a); (var i = 0; i

+0

这可能发生,因为'JSON.parse'失败。你在第一次警报中究竟得到了什么? –