Javascript比较两个可变长度的数组并显示是否有共同的元素

时间:2011-07-30 19:16:32

标签: javascript arrays

  

可能重复:
  Simplest code for array intersection in javascript

我想比较两个不同长度的数组,如果它们之间有一个共同的元素显示警告或dosomething。

var valuesAdded= ["ab","c","d","eeef","bbc","ac","jk","df","ss"]
var valuesToadd= ["aaa","jk","eeef","ddd","d","ab","rs"]

所以valueAdded可以更大或者valuesToadd可以更大,但我想要的是比较它们已经存在于上述情况中的元素“eeef”,“d”,“jk”,“ab”并显示警告这些已经在valuesAdded等。

我想用普通的javascript或者使用dojo。

您可以在这方面取得帮助,我们将非常感谢您的帮助。

由于

2 个答案:

答案 0 :(得分:3)

这里没有特定的Javascript:

for(var i = 0; i<arr1.length; i++){
    for(var j=0; j<arr2.length; j++){
        if(arr1[i] === arr2[j]){
            //do something
        }
    }
}

答案 1 :(得分:0)

对于现代浏览器,您可以

valuesToAdd.forEach(){function(a){
  valuesAdded.indexOf+1?valuesAdded.push(a):alert('You already have this item');
}};

对于低于IE9的旧浏览器,您将不得不回到此处提供的其他方法。