Introdução
Neste laboratório, exploraremos como filtrar valores de um array com base em uma função comparadora fornecida. Usaremos os métodos Array.prototype.filter() e Array.prototype.findIndex() para alcançar este objetivo. Adicionalmente, aprenderemos como usar o comparador de igualdade estrita padrão se nenhuma função comparadora for fornecida.
Como Filtrar Valores de um Array com Base em uma Função
Para filtrar todos os valores de um array com base em uma função comparadora fornecida, siga estes passos:
- Abra o Terminal/SSH e digite
nodepara começar a praticar a codificação. - Use
Array.prototype.filter()eArray.prototype.findIndex()para encontrar os valores apropriados. - Omita o último argumento,
comp, para usar um comparador de igualdade estrita padrão. - Use o seguinte código:
const differenceWith = (arr, val, comp = (a, b) => a === b) =>
arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1);
- Teste sua função com os seguintes exemplos:
differenceWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0],
(a, b) => Math.round(a) === Math.round(b)
); // Expected output: [1, 1.2]
differenceWith([1, 1.2, 1.3], [1, 1.3, 1.5]); // Expected output: [1.2]
Resumo
Parabéns! Você concluiu o laboratório de Diferença de Array com Base em Função. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.