【问题标题】:javascript/jquery search in a subarray?javascript/jquery 在子数组中搜索?
【发布时间】:2012-09-11 10:39:27
【问题描述】:

有一个字符串正在制定类似这样的内容 Item:ShortName:Tax 并且如果添加更多项目,则将其附加到Item:ShortName:Tax_Item2:ShortName2:Tax2 之类的字符串,再添加一个,Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3 等等。我想知道的是,我必须检查列表中是否存在某个项目,例如shirtjeans。当用冒号分隔时,它将是数组中的第一个。

我用this

var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";

$(document).ready(function () {
    var arg = 'Item2';
    findItem(arg);
    fucntion findItem(argument) {
        $.each(list.split('_'), function () {
            if (this.split(':')[0] == arg) {
                alert('Item found!');
            }
        };
        };

尽管Item2 在列表中,但警报并未出现。
如果不清楚,这个由_ 拆分的列表包含一个数组(如您所见),并且由: 分隔的每个数组都包含Itemname, ItemShortName, TaxOnItem,现在在所有这些小数组中,我必须先检查包含ItemName 的数组以查看特定项目是否存在!我该怎么做?

【问题讨论】:

    标签: javascript jquery arrays string


    【解决方案1】:

    您确实意识到您的代码中有错误, 函数 findItem(argument) { } 认为您的意思是“功能”。

    【讨论】:

      【解决方案2】:

      您缺少一些 {( 以及一个错字。控制台日志告诉你这一切!

      $(document).ready(function () {
      
          var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";
          var arg = 'Item2';
          findItem(arg);
      
          function findItem(argument) {
              $.each(list.split('_'), function () {
                  if (this.split(':')[0] == arg) {
                      alert('Item found!');
                  }
              });
      }
      
      }​);​
      

      【讨论】:

        【解决方案3】:

        这里:我稍微重新格式化重组了你的代码。试试这个:

        var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";
        
        function findItem(argument) {
            list.split("_").forEach(function(subList){
                if(subList.split(":")[0] == argument) { 
                     alert("Item found!");
                 }
            });
        };
        
        $(document).ready(function () {
            findItem("Item2");
        };
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-02-12
          • 2014-01-11
          • 2016-11-08
          • 2020-02-01
          • 2011-10-16
          • 2017-03-26
          • 1970-01-01
          相关资源
          最近更新 更多