União de Arrays Mapeados

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Neste laboratório, exploraremos os conceitos de programação JavaScript através de exercícios práticos. O laboratório foi projetado para ajudar os participantes a construir uma sólida compreensão dos conceitos fundamentais do JavaScript, como funções, arrays (vetores), objetos e loops (laços). Através de uma série de desafios e projetos, os participantes terão a oportunidade de aplicar o que aprenderem e construir sua confiança como desenvolvedores JavaScript.

Função para Combinar Arrays com uma Função de Mapeamento Fornecida

Para começar a codificar, abra o Terminal/SSH e digite node.

Esta função retorna um array de elementos que existem em qualquer um dos dois arrays de entrada, após aplicar a função de mapeamento fornecida a cada elemento em ambos os arrays.

Aqui estão os passos para alcançar isso:

  1. Crie um novo Set (conjunto) aplicando a função de mapeamento a todos os valores no primeiro array de entrada a.
  2. Crie outro Set consistindo em todos os elementos em b que não correspondem a nenhum valor no Set criado anteriormente quando a função de mapeamento é aplicada.
  3. Combine os dois conjuntos e converta-os em um array.
  4. Retorne o array resultante.

Aqui está o código para a função unionBy:

const unionBy = (a, b, fn) => {
  const setA = new Set(a.map(fn));
  return Array.from(new Set([...a, ...b.filter((x) => !setA.has(fn(x)))]));
};

Aqui estão alguns exemplos de como usar a função unionBy:

unionBy([2.1], [1.2, 2.3], Math.floor); // Output: [2.1, 1.2]
unionBy([{ id: 1 }, { id: 2 }], [{ id: 2 }, { id: 3 }], (x) => x.id);
// Output: [{ id: 1 }, { id: 2 }, { id: 3 }]

Resumo

Parabéns! Você concluiu o laboratório Mapped Array Union. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.