jQuery访问JSON对象
如何使用jQuery访问Object Literal中项目的名称?
例如,我将如何阅读“标题”,“链接”,“媒体”等内容
{ "title": "What we do in our free time...", "link": "http://www.flickr.com/photos/tnhimmies/4042938515/", "media": {"m":"http://farm3.static.flickr.com/2572/4042938515_3a00561320_m.jpg"}, "date_taken": "2009-10-24T03:48:10-08:00", "description": "
您还可以使用$ .each函数:
var obj = { one:1, two:2, three:3, four:4, five:5 }; $.each(obj, function(key, value) { //.. });
如果你使用for...in
语句,我建议你检查属性是否直接驻留在正在迭代的对象上,因为如果扩展了Object.prototype,你可能会遇到一些 问题 :
for(var key in obj) { if (obj.hasOwnProperty(key)){ // value = obj[key]; } }
for (var key in json) { // ... }
(这是标准的javascript,而不是jQuery-speficic)
在你的情况下,这根本不是一个数组! 您想循环访问对象的属性。
JavaScript并不真正支持关联arrays…请参阅http://www.hunlock.com/blogs/Mastering_Javascript_Arrays
我想补充说,Zed的答案是完美的
alert(json[key]);
在for,如果你想知道如何获得propery的价值
谢谢
如果需要,您可以在没有每个循环的情况下访
var obj = JSON.parse(data); var title = obj[0].title;
var testObject = { "title": "What we do in our free time...", "link": "http://www.flickr.com/photos/tnhimmies/4042938515/", "media": {"m":"http://farm3.static.flickr.com/2572/4042938515_3a00561320_m.jpg"}, "date_taken": "2009-10-24T03:48:10-08:00", "description": "Darlene, TN Persians (www.tnpurrs.com)<\/a> posted a photo:<\/p>
如果它是单个对象,那么你可以通过testObject.tags或testObject.title来访问它……就像这样
或者你可以迭代
$.each(obj,function(key,value){ /// });