我有这组多个数据作为数组
data = [{"id": "1", "name" : "abc", "key1" : "value12 }, {"id": "2", "name" : "cde", "key2" : "value2" }.....]
我需要使用jQuery获取此数据
json = $.parseJSON(data);
但是如何访问已解析的JSON数据? json.id
将结果显示为未定义。
由于
更新:抱歉,我修复了上面给出的JSON示例,我只是自己快速键入它,而不是原来的json我遇到了麻烦。我只是想让它知道我遇到的问题。谢谢你的答案:)
答案 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);