$ .getJSON和$ .each

jie*_*exi 0 each jquery json

所以我试图循环一个JSON响应,但我似乎无法做到正确.

片段:

$.getJSON("/playlist/",function(playlists) {
    $.each(playlists,function() {
        self.playlists[this.playlist.id] = new SC.Playlist(this, self);
        console.log(this);
    })
})
Run Code Online (Sandbox Code Playgroud)

JSON:

jsonp1311444173992([
  {
    is_owner: true,
    id: "wtf",
    playlist: {
      id: "latest1",
      name: "Hot Tracks1",
      version: 0,
      tracks: "33+44+55"
    }
  },
  {
    is_owner: true,
    playlist: {
      id: "latest",
      name: "Hot Tracks",
      smart: true,
      version: 0,
      smart_filter: {
        order: "hotness"
      }
    }
  },
  {
    is_owner: true,
    playlist: {
      id: "latest3",
      name: "Hot Tracks3",
      version: 0,
      tracks: "33+44+55"
    }
  },
  {
    is_owner: true,
    playlist: {
      id: "latest4",
      name: "Hot Tracks4",
      version: 0,
      tracks: "33+44+55"
    }
  },
  {
    is_owner: true,
    playlist: {
      id: "latest5",
      name: "Hot Tracks5",
      version: 0,
      tracks: "33+44+55"
    }
  }
]);
Run Code Online (Sandbox Code Playgroud)

它似乎没有沿着JSON列表.我没有正确调用其中一个变量吗?

Ali*_*guy 5

这是无效的JSON.你需要引用你的钥匙:

{
    "is_owner": true,
    "id": "wtf",
    "playlist": {
      "id": "latest1",
      "name": "Hot Tracks1",
      "version": 0,
      "tracks": "33+44+55"
    }
  },
Run Code Online (Sandbox Code Playgroud)

.. 等等.

JSONLint JSON Validator是一个方便的未来项目参考