如何通过$ .getJSON访问二级JSON对象

时间:2012-08-03 14:09:23

标签: javascript jquery json

嗨,大家好,请看一下这个看起来像这样的物体到达第二级的麻烦:

{
    "results": [{
        "title": "TEAM",
        "subtitle": "athletes",
        "offset": 0,
        "icon": "info",
        "relevance": 1,
        "link": {
            "title": "HOME",
            "url": "http://www.test.com",
            "id": "23458"
        }]
}

这是我的代码:

var theJson = {
    init: function() {
        this.url = 'http://test.com/js?jsonfeed=123123';
        this.fetch();
    },

    fetch: function() {
        $.getJSON(this.url, function( data ){
            var obj = $.map(data.results, function( newObj ){
                return {
                    title: newObj .title,
                    icon: newObj.icon,
                    topic: newObj.link.id, //??
                    topic: newObj["link"].id //??
                    topic: newObj[1].id //??
                };
            });
        });

    }
};

theJson.init();

我的问题是如何在结果对象中的链接数组中找到id var?谢谢大家,你们都摇滚!

2 个答案:

答案 0 :(得分:3)

你正在做第一次和第二次的纠正:

newObj.link.id
newObj["link"].id

有两种正确的方法可以在链接下获取ID。

答案 1 :(得分:0)

您可以像这样通过索引轻松访问它:

newObj["link"][0]