Introdução
Neste laboratório, aprenderemos como implementar a união de arrays com base em uma função em JavaScript. Usaremos a função comparadora fornecida para encontrar e retornar todos os elementos que existem em qualquer um dos dois arrays pelo menos uma vez. Ao final do laboratório, você terá uma melhor compreensão de como usar o método Array.prototype.findIndex() e o objeto Set para comparar e combinar arrays.
Como Encontrar a União de Dois Arrays com Base em uma Função
Para encontrar a união de dois arrays com base em uma função usando Node.js, siga estes passos:
- Abra o Terminal/SSH e digite
node. - Use o seguinte código para criar um
Setcom todos os valores deae os valores embpara os quais o comparador não encontra correspondências ema, usandoArray.prototype.findIndex():
const unionWith = (a, b, comp) =>
Array.from(
new Set([...a, ...b.filter((x) => a.findIndex((y) => comp(x, y)) === -1)])
);
- Chame a função
unionWithcom três argumentos: o primeiro array, o segundo array e a função comparadora. - A função retorna cada elemento que existe em qualquer um dos dois arrays pelo menos uma vez, usando a função comparadora fornecida.
- Aqui está um exemplo de como chamar a função
unionWith:
unionWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
);
// [1, 1.2, 1.5, 3, 0, 3.9]
Isso retornará [1, 1.2, 1.5, 3, 0, 3.9] como a união dos dois arrays.
Resumo
Parabéns! Você concluiu o laboratório de União de Arrays com Base em Função. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.