Desmembrando Arrays de Objetos em JavaScript

Beginner

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

Introdução

Neste laboratório, exploraremos a função unwind em JavaScript. O objetivo desta função é produzir um array de objetos a partir de um objeto e uma de suas propriedades com valor de array. Ao usar a desestruturação de objetos e Array.prototype.map(), podemos criar um array de objetos onde cada objeto contém os valores do objeto original, exceto pela chave especificada, que é mapeada para seus valores individuais. Através deste laboratório, obteremos uma compreensão mais profunda de como manipular e extrair dados de objetos em JavaScript.

Função Unwind de Objeto

Para "unwind" (desmembrar) um objeto por sua propriedade com valor de array, use a função unwind.

  • Para começar a codificar, abra o Terminal/SSH e digite node.
  • A função usa a desestruturação de objetos para excluir o par chave-valor para a key especificada do objeto.
  • Em seguida, ela usa Array.prototype.map() para os valores da key fornecida para criar um array de objetos.
  • Cada objeto contém os valores do objeto original, exceto para a key, que é mapeada para seus valores individuais.
const unwind = (key, obj) => {
  const { [key]: _, ...rest } = obj;
  return obj[key].map((val) => ({ ...rest, [key]: val }));
};

Exemplo de uso:

unwind("b", { a: true, b: [1, 2] }); // [{ a: true, b: 1 }, { a: true, b: 2 }]

Resumo

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