通过推送运行的数组数据变得不确定

时间:2018-10-31 05:35:53

标签: javascript arrays multidimensional-array

起初,我在努力使数组排序,但是我进行了一些测试,发现问题似乎在于数组返回的是未定义的。

var channels = ["BalticSurvivor", "Daddere", "Desudesugaming", "Doublevisionss", "Heyshadylady", "Josephtho", "Jsstudz", "Lady_ocelot", "Magalian", "Nightwake", "Nostrus", "Nvmkthnxbai", "ShadowSlayer52", "Superxinvader", "Theadman2315", "Unic0rny", "Wiigytv"];
var cID = ""
var arrayOffline = [];
var arrayOnline = [];
$(document).ready(function () {
channels.forEach(function (channel) {
    $.ajax({
        type: 'GET',
        url: 'https://api.twitch.tv/kraken/streams/' + channel,
        headers: {
            'Client-ID': cID
        },
        success: function (data) {
            if (data.stream != null) {
                var dumbyarray = [channel, data.stream.preview.medium, data.stream.channel.game, data.stream.channel.status, data.stream.viewers, data.stream.channel.followers];
                arrayOnline.push(dumbyarray);
            } else {
                $.ajax({
                    type: 'GET',
                    url: 'https://api.twitch.tv/kraken/channels/' + channel,
                    headers: {
                        'Client-ID': cID
                    },
                    success: function (odata) {
                        var dumbyarray = [channel, odata.logo, odata.game, odata.status, odata.followers];
                        arrayOffline.push(dumbyarray);
                    }
                });
            }
        }

    });
});

console.log("Offline");
console.dir(arrayOffline);
console.log("arrayOffline type: " + typeof arrayOffline[0])
console.log("Online");
console.dir(arrayOnline);
console.log("arrayOnline type: " + typeof arrayOnline[0])
});

数据正在返回:

data returning from call funciton

问题似乎是数据返回时在推送之后: data type is undefined

0 个答案:

没有答案