2016-05-27 31 views
1

所以我试图让一个应用程序,将返回是否每个twich用户基本的JavaScript变量范围

["ESL_SC2", "OgamingSC2", "cretetion", "freecodecamp", "storbeck", "habathcx",  "RobotCaleb", "noobs2ninjas"] 

是流的。这是我的代码:

var users= ["ESL_SC2", "OgamingSC2", "cretetion", "freecodecamp", "storbeck", "habathcx", "RobotCaleb", "noobs2ninjas"]; 
var progress =0; 
var streaming = []; 
$(document).ready(function() { 
console.log(window.progress); 
while (window.progress<8) { 


var url = 'https://api.twitch.tv/kraken/streams/' + window.users[window.progress] + '?callback=?'; 
$.ajax({ 
url: url, 
async: false, 
dataType: 'json', 
success: function(data) { 
if (data.stream) { 

window.streaming[window.progress]="streaming"; 

} 
//if closed 
else { 
window.streaming[window.progress]="not streaming"; 
}; 
//else closed 

console.log(window.progress); 
console.log(window.users[window.progress]); 
var html = "<p> <a href=\" https://www.twitch.tv/"+window.users[window.progress] +" \" >"+window.users[window.progress]+ "</a> is currently " +window.streaming[window.progress] + "</p>"; 
$("body").append(html); 
}}); 
// getjson closed 
     window.progress +=1; 
     }; 
// for loop closed 

}); 

//document ready closed 

,这就是我得到:

“未定义正流”

所以它似乎不拉用户。由于

回答

0

你流阵列没有初始化,所以这不能做,由于没有0,1,...元就可以了

window.streaming[window.progress]="streaming"; //streaming.length == 0, streaming[0] == 'undefined' 

也许你想克隆users.length对它有一个索引

streaming = []; // length == 0 
streaming.length = users.length; // length == users.length