jQuery access JSON Object

后端 未结 5 1780
梦毁少年i
梦毁少年i 2021-02-06 04:14

How do I access the name of an item in an Object Literal using jQuery?

For example how would I read \"title\", \"link\", \"media\", ect... in this

{
             


        
相关标签:
5条回答
  • 2021-02-06 04:38

    In your case, this is not an array at all! You want to loop through properties of an object.

    JavaScript does not truly support associative arays either... see http://www.hunlock.com/blogs/Mastering_Javascript_Arrays

    Zed's answer is perfect, I would add

    alert(json[key]);
    

    inside the for, if you wonder how to get the value of the propery

    Thanks

    0 讨论(0)
  • 2021-02-06 04:43

    You can access without each loop if you wanted.

    var obj = JSON.parse(data);
    var title  = obj[0].title;
    
    0 讨论(0)
  • 2021-02-06 04:48

    You can also use the $.each function:

    var obj = { one:1, two:2, three:3, four:4, five:5 };
    
    $.each(obj, function(key, value) {
      //..
    });
    

    If you go for the for...in statement way, I would recommend you to check if the property resides directly on the object being iterated, because you could have some issues, if the Object.prototype is extended:

    for(var key in obj) {
      if (obj.hasOwnProperty(key)){
        // value = obj[key];
      }
    }
    
    0 讨论(0)
  • 2021-02-06 04:51
    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": "<p><a href=\"http://www.flickr.com/people/tnhimmies/\">Darlene, TN Persians (www.tnpurrs.com)<\/a> posted a photo:<\/p> <p><a href=\"http://www.flickr.com/photos/tnhimmies/4042938515/\" title=\"What we do in our free time...\"><img src=\"http://farm3.static.flickr.com/2572/4042938515_3a00561320_m.jpg\" width=\"240\" height=\"230\" alt=\"What we do in our free time...\" /><\/a><\/p> <p>Tennessee Persians<br /> <a href=\"http://www.tnpurrs.com\" rel=\"nofollow\">www.tnpurrs.com<\/a><\/p>",
        "published": "2009-10-25T18:28:36Z",
        "author": "nobody@flickr.com (Darlene, TN Persians (www.tnpurrs.com))",
        "author_id": "66405213@N00",
        "tags": "cat persian tnpurrs"
    };
    

    if it is single object then you can access this by testObject.tags or testObject.title ... like this

    or you can iterate by

    $.each(obj,function(key,value){
    ///
    });
    
    0 讨论(0)
  • 2021-02-06 04:54
    for (var key in json) {
      // ...
    }
    

    (this is standard javascript, not jQuery-speficic)

    0 讨论(0)
提交回复
热议问题