Introdução
Neste laboratório, exploraremos o conceito de encontrar a diferença simétrica entre dois arrays em JavaScript. Este laboratório irá guiá-lo através do processo de criação de um Set a partir de cada array para obter os valores únicos e usando o método filter() para manter apenas os valores que não estão contidos no outro. Ao final deste laboratório, você terá uma sólida compreensão de como implementar essa lógica e será capaz de aplicá-la aos seus próprios projetos.
Diferença Simétrica de Arrays
Para encontrar a diferença simétrica entre dois arrays e incluir valores duplicados, siga estes passos:
- Abra o Terminal/SSH e digite
nodepara começar a praticar a codificação. - Crie um
Seta partir de cada array para obter os valores únicos de cada um. - Use
Array.prototype.filter()em cada um deles para manter apenas os valores que não estão contidos no outro.
Aqui está o código:
const symmetricDifference = (a, b) => {
const sA = new Set(a),
sB = new Set(b);
return [...a.filter((x) => !sB.has(x)), ...b.filter((x) => !sA.has(x))];
};
Você pode usar os seguintes exemplos para testar a função:
symmetricDifference([1, 2, 3], [1, 2, 4]); // [3, 4]
symmetricDifference([1, 2, 2], [1, 3, 1]); // [2, 2, 3]
Resumo
Parabéns! Você concluiu o laboratório de Diferença Simétrica de Arrays. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.