2016-07-06 2 views
0

У меня есть 2 для петель, идущих один за другим. Обе петли в значительной степени делают то же самое с другой информацией, но проблема в том, какой из циклов я ставил первые прогоны, и все после этого цикла, независимо от того, какой код не будет работать. Оба цикла работают отлично, но все в зависимости от того, какое из них раньше в строках кода, оно также не будет выполнять ничего после этого первого цикла. Может ли кто-нибудь сказать мне, почему? вот мой кодJQuery для Loop заканчивается код

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 + ">") 
       } 
      }); 
     }); 
    } 
} 

ответ

0

Вам необходимо установить условие, когда петли считаются законченными.

for (i = 0; purplerescount.length < i; i++) { ... } 

и

for (x = 0; bluerescount.length < x; x++) { ... } 

иначе они будут работать вечно (попробуйте использовать console.log ("тест") в первом цикле, и вы увидите, что он печатает бесконечно).

Для получения дополнительной информации см. this.

+1

условия назад – charlietfl