Interseção e diferença
Ao lidar com listas de dados, é comum precisar comparar dois conjuntos: quais itens estão em ambos, quais estão apenas no primeiro, ou todos os itens sem repetição. Essas operações aparecem em filtros de permissões, sincronização de dados ou análise de tags. Dominar filter, includes e Set permite escrever código limpo e eficiente para essas tarefas.
O PROBLEMA
Calcule interseção, diferença e união entre dois arrays.
EXEMPLO
a=[1,2,3,4,5], b=[3,4,5,6,7] Interseção: [3,4,5] Diferença: [1,2] União: [1,2,3,4,5,6,7]
SOBRE O CONCEITO
A interseção retorna elementos presentes em ambos os arrays: use filter no primeiro array checando includes no segundo, convertido em Set para performance. A diferença (simples) retorna elementos do primeiro que não estão no segundo: mesmo padrão, mas com !includes. A união combina todos os elementos únicos usando Set com spread. Erro comum é confundir diferença simples com diferença simétrica (elementos exclusivos de cada lado). A diferença simples pede apenas os do primeiro array que não estão no segundo, sem considerar os exclusivos do segundo.
RESOLUÇÃO