Javascript 在jquery中使用自定义结构解析JSON

Javascript 在jquery中使用自定义结构解析JSON,javascript,jquery,json,Javascript,Jquery,Json,如何在jQuery中解析此JSON: {"3":[ {"project_id":27,"name":"Name1"}, {"project_id":28,"name":"Name2"}, {"project_id":29,"name":"Name3"}, {"project_id":32,"name":"Name4"} ]} 就像我们每天解析JSON一样,Pinky: var parsed = JSON.parse(input); 通常,您可以使用JQuery解析JSON,如下所示:

如何在jQuery中解析此JSON:

{"3":[
 {"project_id":27,"name":"Name1"},
 {"project_id":28,"name":"Name2"},
 {"project_id":29,"name":"Name3"},
 {"project_id":32,"name":"Name4"}
]}

就像我们每天解析JSON一样,Pinky:

var parsed = JSON.parse(input);

通常,您可以使用JQuery解析JSON,如下所示:

var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );

我不确定您到底需要什么,但您可以通过核心JavaScript访问对象中的元素。您不需要jQuery来实现这一点。例如:

theObject[3][0].product_id

将返回27个JSON数据,例如,从AJAX调用返回的数据将自动解析为连接到变量的结构。或者,你可以用Adrian展示的东西把一个字符串变成一个结构

现在,您的结构有一个问题:据我所知,3在关联数组中不是一个OK名称。将其更改为列表或符合密钥要求的内容,如:

var projects = {"list":[
 {"project_id":27,"name":"Name1"},
 {"project_id":28,"name":"Name2"},
 {"project_id":29,"name":"Name3"},
 {"project_id":32,"name":"Name4"}
]};
然后你可以像这样访问元素

console.log(projects.list);
console.log(projects.list[0].project_id, projects.list[0].name);

你试了什么?您遇到了什么问题?解析是什么意思?与解析任何其他JSON的方式相同。可能是重复的,也可能是。@ansible:您收到了一些负面反馈,因为不太清楚您的问题是什么。你在问题和解释问题上投入的时间越多,通常得到的积极反应就越多。例如,如果您解释说您尝试了另一个问题的解决方案,但由于X的原因,它对您不起作用,并且您想做Y,那么我相信这些问题不会得到如此糟糕的回答。堆栈溢出会遇到很多低质量的问题,我们没有时间先弄清楚问题的实质。你不是说对象[3][0]。产品id?谢谢你的好意并为我指出了正确的方向。为什么3不是一个好名字?var a={3:test};100%有效注意:您可以使用[]访问对象。另外,JavaScript没有关联数组,它有对象。好问题。当我在JSFIDLE中尝试它时,他的JSON没有改变,我在尝试这样访问它时遇到了一个错误:console.logprojects.3;但是您可以像这样访问它:console.logprojects[3];所以这显然没有错,只是有点麻烦。所以我坚持认为这是,不好的。