二维数组求交集的方法

根据业务需求,须要在二维数组(子元素是多个数组)中求出交集,巧妙运用数组的reduce和filter方法

let arr = [
       [1, 2, 3, 4, 5,'aa'], 
       [2, 3, 4, 5, 6, 7, 88,'aa'],
       [3, 4, 5, 6, 7, 7,'aa','bbb'], 
       [3, 4, 5, 6, 7, 7,'aa'],
       [3, 4, 5, 6, 7, 9,'aa']
   ];
   let res = arr.reduce((acc, cur, curIndex) => acc.filter( v => cur.indexOf(v) !== -1 ));
   
   console.log(res); // [3, 4, 5, "aa"]
   
复制代码
相关文章
相关标签/搜索