我有像这样的数组
["key1",key2","key3"],["key4","key5","key6"],["key1","key7",key8","key9"]
在这个“key1
”中,在第一个和第三个数组中很常见。我想识别这个场景。
编辑此问题与Finding matches between multiple JavaScript Arrays不重复。
我不想找到多个数组的常见元素。我想检查至少两个数组(任意两个)是否至少有一个公共元素。(这个元素不需要在集合中的其他数组中)。
我也找到了答案,假设数组中没有相同的元素。
答:
var containerKeys=[];
for(var i = 0;i < arraySet.length; i++ )
{
var arrValues = arraySet[i].value;
var keys = arrValues.split(",");
//checking whether different arrays have same keyword
var intersection=containerKeys.filter(function(n) {
return keys.indexOf(n) != -1;});
if(intersection.length>0){
//Show error that there are same elements.
return false;}
containerKeys=containerKeys.concat(keys);
}