读取/加载Javascript中的JSON,其中';id';=';x';

读取/加载Javascript中的JSON,其中';id';=';x';,javascript,json,ajax,Javascript,Json,Ajax,我目前有一段代码,可以将.json文件中的所有信息加载到JavaScript数组中 function loadContacts(filter) { var contacts = (function () { var contacts = null; $.ajax({ 'async': false, 'global': false, 'url': 'userdata/' + username + '.json',

我目前有一段代码,可以将.json文件中的所有信息加载到JavaScript数组中

    function loadContacts(filter) {
    var contacts = (function () {
     var contacts = null;
     $.ajax({
        'async': false,
        'global': false,
        'url': 'userdata/' + username + '.json',
        'dataType': "json",
        'success': function (data) {
            contacts = data;
        }
    });
   return contacts;
   })();

  //filter code goes here, not necessary for this example

  }
我在变量中存储了一个ID号,例如
userid=99
。下面是我的
.json
文件的一个示例

[{"firstName":"Ryan","lastName":"Butterworth","id":"99"},{"firstName":"John","lastName":"Doe","id":"101"}]
如何编辑上面的
loadContacts
函数,以便仅读取/加载id99的.json信息?因此,上面的
loadContacts
函数将
{“firstName”:“Ryan”,“lastName”:“Butterworth”,“id”:“99”}
返回到
contacts

您可以使用
过滤器()

contacts = contacts.filter(function(i) {
    return i.id == "99";
});
在遍历现有数组并仅添加从函数返回true的项之后,它返回一个新数组

我将暂缓同步和异步对话,但我认为这条评论在这里让您了解我的感受:p

您可以使用
filter()
来完成这项工作

contacts = contacts.filter(function(i) {
    return i.id == "99";
});
在遍历现有数组并仅添加从函数返回true的项之后,它返回一个新数组


我将暂缓同步和异步对话,但我认为这里的评论让您了解我的感受:p

您是否希望JSON文件中的数据经常更改?JSON文件仅在用户从完全独立的页面输入时更改。但是是的,它可能会经常更改。您希望JSON文件中的数据经常更改吗?JSON文件仅在用户从完全独立的页面输入时更改。但是是的,它可能经常改变。