Jquery JSON解码多个数组

时间:2013-12-13 17:21:32

标签: javascript jquery json

我有这组多个数据作为数组

data = [{"id": "1", "name" : "abc", "key1" : "value12 }, {"id": "2", "name" : "cde", "key2" : "value2" }.....]

我需要使用jQuery获取此数据

json = $.parseJSON(data);

但是如何访问已解析的JSON数据? json.id将结果显示为未定义。

由于

更新:抱歉,我修复了上面给出的JSON示例,我只是自己快速键入它,而不是原来的json我遇到了麻烦。我只是想让它知道我遇到的问题。谢谢你的答案:)

4 个答案:

答案 0 :(得分:3)

这不是JSON。它甚至不是JavaScript。

如果修复了语法错误(例如缺少的引号和数组项之间缺少的逗号),那么它就是一个数组文字(包含包含...的对象文字)。 不要 parseJSON它(您在JavaScript字符串中存储的JSON文本上使用它)。

因为它是一个数组。它没有id。它有许多数字索引。

var someObject = data[0];

存储在这些索引上的对象有id。

var id = someObject.id;

答案 1 :(得分:0)

你的json无效。对象之间缺少','。

假设json是:

data = [{"id": "1", "name" : "abc", "key1" : "value12" }, {"id": "2", "name" : "cde", "key2" : "value2" }]

然后您可以使用以下方法访问'id'元素:

data[0].id

答案 2 :(得分:0)

试试这个:

var data = '{"id": "1", "name" : "abc", "key1" : "value12" } , {"id": "2", "name" : "cde", "key2" : "value2"}';
var obj = JSON.parse('[' + data + ']');
alert(obj[0].id);

这是demo

答案 3 :(得分:-1)

您的json无效,

data = [{"id": "1", "name" : "abc", "key1" : "value12" }, {"id": "2", "name" : "cde", "key2" : "value2" }.....]

使用以下方式检索:

var id =  data[0].id;

console.log(id);