Jquery For Loop 结束代码

Posted

技术标签:

【中文标题】Jquery For Loop 结束代码【英文标题】:Jquery For Loop ends code 【发布时间】:2016-11-09 03:06:16 【问题描述】:

我有 2 个 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 + ">")
              
            );
        );
    

【问题讨论】:

【参考方案1】:

您需要设置循环何时被视为完成的条件。

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

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

否则它们将永远运行(尝试在第一个循环中使用 console.log("test"),您会看到它无限打印)。

更多信息请参见this。

【讨论】:

条件倒退

以上是关于Jquery For Loop 结束代码的主要内容,如果未能解决你的问题,请参考以下文章

没有 JQuery 的 Django Loop for Window 展开/折叠

Jquer学习之jQuery(function(){})与(function(){})(jQuery)之间的区别

如何强制结束 for 循环的迭代(不停止 for 循环)?

在vue中如何引jquer

setup和loop的含义

如何在jquery中使用websocket for android