0
"slider":
[{
    "album":{
        "name":"album 0",
        "title":"title 0",
        "description":"desc 0"
    },
    "album":{
        "name":"album 1",
        "title":"title 1",
        "description":"desc 1"
    },
    "album":{
        "name":"album 2",
        "title":"title 2",
        "description":"desc 2"
    }
  }]
}

我想找到专辑的长度,我想切换到具有索引值的专辑。

请帮我...

4

3 回答 3

1

如果你有

var slider= {
  "albums": [ 
    {
        "name":"album 0",
        "title":"title 0",
        "description":"desc 0"
    },
    {   "name":"album 1",
        "title":"title 1",
        "description":"desc 1"
    },
    {
        "name":"album 2",
        "title":"title 2",
        "description":"desc 2"
    }
  ]
}

然后 slider.albums[1].name 会给你“专辑 1”


更新 所以在一个for循环中:

var albums = slider.albums;
for (var i=0,n=albums.length, album;i<n;i++) { 
  album = albums[i];
  alert((i+1)+":"+album.name+" - " + album.title);
}

演示

于 2012-10-05T08:42:25.307 回答
0

我会选择一个类似的结构:

"slider":[
    {
        "name":"album 0",
        "title":"title 0",
        "description":"desc 0"
    },
    {
        "name":"album 1",
        "title":"title 1",
        "description":"desc 1"
    },
    {
        "name":"album 2",
        "title":"title 2",
        "description":"desc 2"
    }
]
于 2012-10-05T08:43:38.403 回答
0

您对 JSON 建模的方式不正确。目前,您有 3 个具有相同标识符(专辑)的键。您应该改为将其更改为数组。

这是一个关于如何做到这一点的好例子:

var slider = {
    "albums":
    [
        {
            "name":"album 0",
            "title":"title 0",
            "description":"desc 0"
        },
        {
            "name":"album 1",
            "title":"title 1",
            "description":"desc 1"
        },
        {
            "name":"album 2",
            "title":"title 2",
            "description":"desc 2"
        }
    ]
}

slider.albums.length
于 2012-10-05T08:47:24.890 回答