$ .getJSON无理由地更改对象属性

时间:2017-02-01 18:30:03

标签: javascript jquery getjson

我正在处理的代码有一个poolGames数组,其中包含poolGame对象,每个对象都有一个唯一的gameid属性。我调试的这部分代码会调用API来搜索所有实时游戏,并匹配gameid属性。

以下是API调用:

} else if (game.gametime < game.now) {
    console.log(game.gameid);
    var liveAPI = 'pickem/picksheet/liveTest.json';
    $.getJSON(liveAPI, function() {
        type: 'json'
    }).fail(function(error) {
        console.log(error);
    }).done(function(liveData) {
        console.log(game.gameid);
        var liveGames = zipArrays(liveData.Livedata);
        var liveGame = $.grep(liveGames, function(g) { return g.gameid == game.gameid })[0];
        fullDate = new Date (1000 * game.gametime).toString('ddd, MMM dd - ') + 'LIVE - ' + liveGame.qtr + ': ' + liveGame.timeleft;
        $(dateRow).css('background-color', '#f7931e');
        $(dateInfo).css('color', 'black');
        $(dateRow).css('border', '2px solid black');
        $(dateInfo).html(fullDate);
    });
};

以下是我正在测试的测试页面的JSON:

{
    "Lastupdated": "N/A",
    "Interval": "868709000",
    "Livedata": {
    "COLUMNS": ["GAMEID", "ROADSCORE", "HOMESCORE", "ISFINAL", "HOMELIVE", "ROADLIVE", "TIMELEFT", "QTR", "HOMEBALL", "HOMEHALF", "DOWN", "YARDLINE", "DBDATE", "REDZONE", "LASTUPDATED", "ENDTIME", "GAMETIME", "GAMESTATUS"],
    "DATA": [
        [29911, 0, 0, false, 13, 10, "4:13", "2nd", false, false, "3", 42, "January, 26 2017 14:11:30", false, null, "February, 05 2017 19:15:00", "February, 05 2017 15:30:00", 2]
        ]
    }
}

我已经包含了控制台日志,因此我可以包含此开发工具读数,它显示在此API调用期间更改了gameid属性:

Dev Tools Console

错误出现两次,因为我进行了两次API调用(我尝试删除第二个API调用,它具有相同的代码,并且它没有改变问题)。

在API调用后检查poolGames数组显示数组中的每个游戏都将gameid属性更改为&#39; 29915&#39;,这是最终游戏的游戏玩法。

任何帮助表示赞赏。如果您需要我提供更多代码让我知道,我不确定我需要在这里显示多少(该文件总共约1800行)。

0 个答案:

没有答案