Javascript检查一个数组中的项目是否存在于另一个数组中?

时间:2017-01-10 15:48:03

标签: javascript

Javascript检查一个数组中的项目是否存在于另一个数组中?

2 个答案:

答案 0 :(得分:1)

  1. 对两个数组进行排序
  2. 同时迭代两个数组,如果相同位置的值不是"相同",则返回false。
  3. 如果到达数组的末尾,则返回true。

答案 1 :(得分:0)

您可以使用哈希表并检查第一个数组是否有相同的哈希值。然后返回公共号码。

function comp(array1, array2) {
    var hash = {};
    array2.forEach(function(a) {
        hash[Math.sqrt(a).toString()] = true;
    });
    return array1.filter(function (a) {
        return hash[a];
    });
}

var array1 = [121, 144, 19, 161, 19, 144, 19, 11],
    array2 = [11, 14641, 20736, 361, 25921, 361, 20736, 361];

console.log(comp(array1, array2));