Desagrupar Elementos de un Array

JavaScriptJavaScriptBeginner
Practicar Ahora

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

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos cómo desagrupar elementos en una matriz de matrices utilizando JavaScript. Utilizaremos una combinación de funciones integradas de JavaScript como reduce, map y forEach para extraer matrices individuales de una sola matriz de matrices. Al final de este laboratorio, tendrás una comprensión sólida de cómo manipular matrices en JavaScript para obtener la salida deseada.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/data_types -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/arith_ops -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/comp_ops -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/array_methods -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/higher_funcs -.-> lab-28681{{"Desagrupar Elementos de un Array"}} javascript/spread_rest -.-> lab-28681{{"Desagrupar Elementos de un Array"}} end

Cómo desagrupar elementos de un array en JavaScript

Para desagrupar los elementos de un array producido por la función zip, puedes crear una matriz de matrices utilizando la función unzip en JavaScript. Aquí está cómo:

  1. Abre la Terminal/SSH y escribe node para comenzar a practicar la codificación.
  2. Utiliza Math.max(), Function.prototype.apply() para obtener la submatriz más larga en el array, y Array.prototype.map() para convertir cada elemento en un array.
  3. Utiliza Array.prototype.reduce() y Array.prototype.forEach() para mapear los valores agrupados a arrays individuales.

Aquí está el código para la función unzip:

const unzip = (arr) =>
  arr.reduce(
    (acc, val) => (val.forEach((v, i) => acc[i].push(v)), acc),
    Array.from({
      length: Math.max(...arr.map((x) => x.length))
    }).map((x) => [])
  );

Puedes utilizar la función unzip con los siguientes ejemplos:

unzip([
  ["a", 1, true],
  ["b", 2, false]
]); // [['a', 'b'], [1, 2], [true, false]]
unzip([
  ["a", 1, true],
  ["b", 2]
]); // [['a', 'b'], [1, 2], [true]]

Siguiendo estos pasos, puedes desagrupar fácilmente los elementos de un array en JavaScript.

Resumen

¡Felicidades! Has completado el laboratorio de Desagrupar Elementos de un Array. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.