通过Id从json文件中获取特定值

时间:2014-11-19 13:15:39

标签: javascript jquery json promise

我使用$ .get来获取工作正常的JSON文件内容,目前我想过滤并获取Id 4(最后一个)的项目,我该怎么做? 在Jquery文档中,我没有找到一些暗示...... http://api.jquery.com/jquery.get/

这是代码:

 $.get('tweets.json');

这是JSON文件内容

[
  {
   "id": 1,
   "tweet": "OMG, worst day ever, my BF @BobbyBoo dumped me",
   "usersMentioned": [
     {
      "id": 10,
      "username": "BobbyBoo"
     }
    ]
  },
  {
   "id": 2,
   "tweet": "OMG, best day ever, my BF came back to me"
  },
  {
   "id": 3,
   "tweet": "OMG, worst day ever, just don't ask"
  },
  {
   "id": 4,
   "tweet": "@BobbyBoo OMG...just OMG!",
   "usersMentioned": [
     {
      "id": 10,
      "username": "BobbyBoo"
     }
    ]
  }
]

更新

Currenlty当我尝试以下时我不会在当时(功能(推文)中得到一些,推文是emtpy 值entry4用正确的值填充......

  $.get('profile.json').then(function (profile) {

    $('#profile-pre').html(JSON.stringify(profile));

     $.get('tweets.json', null, null, 'json')
        .then(function (response) {
           var entry4 =  response.filter(function (tweet) {
               return tweet.id === 4;
            })[0];
             return entry4 ;
        })



}).then(function (tweets) {

    $('#tweets-pre').html(JSON.stringify(tweets));

    var myFriend = $.get('friend.json');

    return myFriend
}).then(function (friend) {

1 个答案:

答案 0 :(得分:1)

那将是

$.get('tweets.json',null,null,'json')
  .then(function(response){
    var iAmNumberFour = response.filter(function(tweet){
      return tweet.id === 4;
    })[0];
  });

添加了类型,因为如果你没有传递正确的标题,jQuery不会为你解析JSON。


$.get('profile.json').then(function(profile) {

  $('#profile-pre').html(JSON.stringify(profile));

  return $.get('tweets.json', null, null, 'json')
    .then(function(response) {
      var entry4 = response.filter(function(tweet) {
        return tweet.id === 4;
      })[0];
      return entry4;
    })

}).then(function(entry4) {

  $('#tweets-pre').html(JSON.stringify(tweets));

  var myFriend = $.get('friend.json');

  return myFriend
})