【问题标题】:For Loop having three statements [closed]For Loop 具有三个语句[关闭]
【发布时间】:2013-04-25 06:27:47
【问题描述】:

这可能吗? 1 for 循环 3 语句?

    for(var i =0; i< aObj.length;i++)
(var a =0; a< bObj.length;a++)
(var b =0; b< cObj.length;b++){
         //sOME CODE HERE
    }

【问题讨论】:

    标签: jquery jquery-mobile


    【解决方案1】:

    不,这是无效的 javascript 语法。根据您的要求,您可以使用 3 个嵌套的 for 循环或使它们连续。

    例如:

    for(var i = 0; i < aObj.length; i++) {
        for(var a = 0; a < bObj.length; a++) {
            for(var b = 0; b < cObj.length; b++) {
                // some code here
            }
        }
    }
    

    或:

    for(var i = 0; i < aObj.length; i++) {
        // some code here
    }
    
    for(var a = 0; a < bObj.length; a++) {
        // some code here
    }
    
    for(var b = 0; b < cObj.length; b++) {
        // some code here
    }
    

    但这又一次取决于您需要对这些变量做什么。

    【讨论】:

    • 我有 3 个不同的循环来获取 xml 中的每个数据。但它没有得到每一个数据。它得到最后一个,这就是为什么我问这是否可能。它是我的循环代码,用于获取数据 Name.Code 和 Category 并在 Listview 中输出
    • $(req.responseText).find('Name').each(function(){ NameObj[Nameindex] = $(this).text(); Nameindex +=0; for(var i =0; i"); } ) //第一个循环
    • $(req.responseText).find('Code').each(function(){ CodeObj[Codeindex] = $(this).text(); Codeindex +=0; for(var a =0; a"); } });//第二次循环
    • $(req.responseText).find('Category').each(function(){ CatObj[Catindex] = $(this).text(); Catindex +=0; for(var b =0; b"); } });//第三次循环
    • var $content = $('
    • 名称: '+ NameObj[i] + '

      代码:'+ CodeObj[a] + '

      类别:'+ CatObj[b] + '

      添加到收藏夹
    • '); $('#RecipeList').append($content).listview('refresh');//我的追加到列表视图的代码
    【解决方案2】:

    我认为这是不可能的更好的选择:

    for(var i =0; i< aObj.length;i++){
      for(var a =0; a< bObj.length;a++){
       for(var b =0; b< cObj.length;b++){
       //sOME CODE HERE
       }
      }
    }
    

    【讨论】:

      【解决方案3】:

      这是我的实际代码家伙..我得到的名称、代码和类别的最后一项不是数组中的每个项

      var CodeObj=new Array(); var NameObj=new Array(); new aObj = new Array();
      var CatObj=new Array(); var Codeindex= 0;
      var Nameindex= 0; var Catindex= 0; aindex = 0; 
      
      
          $(req.responseText).find('Name').each(function(){ 
                                   NameObj[Nameindex] = $(this).text();
                                   Nameindex +=0;
      
                               for(var i =0; i< NameObj.length;i++){
                                    $(this).append(NameObj[i]+"<br/>");
                                 } //1st loop to get the Name
      
           }) 
      
          $(req.responseText).find('Code').each(function(){ 
                         CodeObj[Codeindex] = $(this).text();
                          Codeindex +=0;
                        for(var a =0; a< CodeObj.length;a++){
                              $(this).append(CodeObj[a]+"<br/>");
      
                        } //2nd loop to get the Code
      
           });
      
      
           $(req.responseText).find('Category').each(function(){ 
                                CatObj[Catindex] = $(this).text();
                                Catindex +=0;
                          for(var b =0; b< CatObj.length;b++){
                                      $(this).append(CatObj[b]+"<br/>");
      
                          } //3rd loop to get the category
                  });
         //codes to append in list view                            
             var $content = $('<li><a href="#"><img src="../../img/album-bb.jpg"><h3>Name: '+ NameObj[i] + '</h3><p>Code: '+ CodeObj[a] + '</p><p>Category: '+  CatObj[b] + '</p></a><a href="#purchase" data-rel="popup" data-position-to="window" data-transition="pop">Add to favorites</a></li>');                              
            $('#RecipeList').append($content).listview('refresh');
      

      【讨论】:

      • 将此作为更新发布在您的问题中
      猜你喜欢
      相关资源
      最近更新 更多
      热门标签