【问题标题】:Compare 2 arrays and return true if ANY values match比较 2 个数组并在任何值匹配时返回 true
【发布时间】:2015-06-20 14:52:15
【问题描述】:

我有2个数组,例如:

Array1:[一、二、三、四、五] Array2:[三、五]

如果 Array2 中的任何值与 Array1 中的任何值匹配,我需要有一个返回 true 的函数。

我试过了:

var compareArray = $.inArray(Array1, Array2);

但这总是返回“-1”。

【问题讨论】:

  • 那是因为 $.inArray() 函数接受一个值和一个数组。不是整个数组和另一个数组。因此,您必须遍历数组(使用 for 循环)以传递每个值以与另一个数组进行比较。
  • OK 我将如何遍历一个数组并将每个值与另一个数组进行比较?谢谢

标签: jquery arrays


【解决方案1】:

以下是您可以用作解决方案指南的另一个问题:

Comparing two arrays in jquery

【讨论】:

    【解决方案2】:

    如果您只使用小型数组,您可以尝试蛮力算法。像下面这样的东西应该可以工作。

    function findMatch(arr1, arr2) {
      for (i=0; i < arr1.length; i++) {
        for (j=0; j < arr2.length; j++) {
          if (arr1[i] === arr2[j]) {
            return true
          }
        }
      }
      
      return false
    }

    【讨论】:

      猜你喜欢
      • 2020-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-31
      • 2022-01-02
      相关资源
      最近更新 更多