Rumah > Soal Jawab > teks badan
Terdapat tiga elemen dalam pengembangan status
Kemudian status[0]
ialah elemen objek yang saya tolak masukstatus[0]
是我push进去的对象元素
然后status[1]
和status[2]
Kemudian status[1]
dan status [ 2]
Semua jenis yang tidak ditentukan, kenapa?
Berikut ialah kod lengkap Selepas mencubanya beberapa kali, saya rasa ia ada kaitan dengan skop pembolehubah Walau bagaimanapun, hasil pembolehubah tatasusunan adalah di lapisan paling luar luar?
function getStreamsStatus(channels) {
var results = [];
$.each(channels, function(index, channel) {
var result = [];
// result.push({ name: channel });
$.getJSON (
"https://api.twitch.tv/kraken/streams/" + channel,
{
Accept: "application/vnd.twitchtv.v5+json",
client_id: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
callback: ""
},
function(data) {
result.push(data);
$.getJSON(
data._links.channel,
{
Accept: "application/vnd.twitchtv.v5+json",
client_id: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
callback: ""
},
function(channel_data) {
result.push(channel_data);
// console.log(result);
// console.log(result[0]);
// console.log(result[1]);
});
console.log(result);
console.log(result[0]);
console.log(result[1]);
});
results.push(result);
// console.log(result);
// console.log(result[0]);
// console.log(result[1]);
});
return results;
}
给我你的怀抱2017-05-19 10:25:15
Ajax ialah proses tak segerak, dan fungsi panggil balik dilaksanakan selepas data diambil
Dan keputusan anda.push(hasil) sepatutnya telah ditolak masuk sebelum data diambil semula
Jadi apabila anda menyemaknya, ia belum lagi Push ke dalam tatasusunan data
Anda perlu menunggu sehingga data dimuatkan sebelum anda boleh melihat data dalam konsol
Perkara yang sama berlaku untuk sarang Ajax sebelumnya
PHPz2017-05-19 10:25:15
undefined juga boleh disimpan dalam tatasusunan, dan ia juga mempunyai panjang.
迷茫2017-05-19 10:25:15
Abang...sila ambil screenshot penuh,
Baiklah, jika anda menggunakan setiap satu, anda sudah mula melintasi array
$.each(statuses, function (index, status) {
console.log(status)
})
Status output ialah setiap objek
黄舟2017-05-19 10:25:15
Dalam konsol, selepas mengklik pada tatasusunan, status masa nyata dipaparkan, tetapi apabila anda mencetak, hanya ada satu Kemudian, data itu datang secara tidak segerak dan diisi ke dalam tatasusunan. Anda akan tahu dengan mengeluarkan panjang hasil dalam kod