我有两个for循环,一个接一个地运行。两个循环用不同的信息做了几乎相同的事情,但问题是我先运行哪个循环,以及那个循环之后的所有东西,无论什么代码都不会运行。这两个循环都工作得很好,但都取决于代码行中较早的一个,它也不会在第一个循环之后执行任何东西。有人能告诉我为什么吗?以下是我的代码
for (i = 0; purplerescount.length; i++) {
if (pbigone[i].length > 0) {
$.ajax({
url: "https://global.api.pvp.net/api/lol/static-data/na/v1.2/champion/" + purplerescount[i],
method: "GET",
data:{
api_key: "60304d9a-bf05-49ce-bd2a-30e6cc3f3863"
},
success: function(response) {
var results = response.key
var square = "http://ddragon.leagueoflegends.com/cdn/6.12.1/img/champion/" + results + ".png"
$('#purpleresults').append("<img id='counterpics' src=" + square + ">")
}
});
pbigone[i].forEach(function(entry){
$.ajax({
url: "https://global.api.pvp.net/api/lol/static-data/na/v1.2/champion/" + entry,
method: "GET",
data:{
api_key: "60304d9a-bf05-49ce-bd2a-30e6cc3f3863"
},
success: function(response) {
var results = response.key
var square = "http://ddragon.leagueoflegends.com/cdn/6.12.1/img/champion/" + results + ".png"
$('#purpleresults').append("<img id='counterpics' src=" + square + ">")
}
});
});
}
}
for (x = 0; bluerescount.length; x++) {
if (bbigone[x].length > 0) {
$.ajax({
url: "https://global.api.pvp.net/api/lol/static-data/na/v1.2/champion/" + bluerescount[x],
method: "GET",
data:{
api_key: "5a3cb583-47f0-4344-89ab-6c52b15f4082"
},
success: function(response) {
var results = response.key
var square = "http://ddragon.leagueoflegends.com/cdn/6.12.1/img/champion/" + results + ".png"
$('#blueresults').append("<img id='counterpics' src=" + square + ">")
}
});
bbigone[x].forEach(function(entry){
$.ajax({
url: "https://global.api.pvp.net/api/lol/static-data/na/v1.2/champion/" + entry,
method: "GET",
data:{
api_key: "5a3cb583-47f0-4344-89ab-6c52b15f4082"
},
success: function(response) {
var results = response.key
var square = "http://ddragon.leagueoflegends.com/cdn/6.12.1/img/champion/" + results + ".png"
$('#blueresults').append("<img id='counterpics' src=" + square + ">")
}
});
});
}
}发布于 2016-07-07 06:14:35
您需要设置一个条件,用于确定循环何时结束。
for (i = 0; purplerescount.length < i; i++) { ... }和
for (x = 0; bluerescount.length < x; x++) { ... }否则它们将永远运行(尝试在第一个循环中使用console.log("test"),您将看到它无限打印)。
有关更多信息,请参阅this。
https://stackoverflow.com/questions/38234582
复制相似问题