Introdução
Neste laboratório, exploraremos como encontrar a diferença simétrica entre dois arrays com base em uma função fornecida usando JavaScript. Usaremos os métodos Array.prototype.filter() e Array.prototype.findIndex() para comparar os elementos dos dois arrays e retornar os valores que são únicos a cada array. Ao final deste laboratório, você terá uma melhor compreensão de como usar esses métodos para comparar e manipular arrays em JavaScript.
Uma Função para Encontrar a Diferença Simétrica de Arrays
Para encontrar a diferença simétrica entre dois arrays usando uma função fornecida como comparador, siga estes passos:
- Abra o Terminal/SSH e digite
nodepara começar a praticar a codificação. - Use os métodos
Array.prototype.filter()eArray.prototype.findIndex()para encontrar os valores apropriados. - Use o código fornecido para realizar a operação.
const symmetricDifferenceWith = (arr, val, comp) => [
...arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1),
...val.filter((a) => arr.findIndex((b) => comp(a, b)) === -1)
];
Por exemplo, considere a seguinte entrada:
symmetricDifferenceWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
); // [1, 1.2, 3.9]
O código acima retornará [1, 1.2, 3.9] como a diferença simétrica entre os dois arrays.
Resumo
Parabéns! Você concluiu o laboratório de Diferença Simétrica de Array Baseada em Função. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.