首页 > 解决方案 > Javascript从多个数组中查找所有重复项

问题描述

我有数组数组,每个数组都有唯一的 items 。我需要查找并收集所有数组之间的所有重复项到新数组。

对于这个输入:[[1,2,6,9],[3,2,7,5,12],[1,3]]

我需要这个输出:[1,2,3]

有谁现在最好的方法是什么?

标签: javascriptarraysduplicates

解决方案


您可以对对象进行闭包以计算值。

const
    data = [[1, 2, 6, 9], [3, 2, 7, 5, 12], [1, 3]],
    result = data
        .flat()
        .filter(
            (o => v => (o[v] = (o[v] || 0) + 1) === 2)
            ({})
        );

console.log(result);


推荐阅读