Agrupar datos de múltiples arrays

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 agrupar los elementos de un array según su posición en los arrays originales. Utilizaremos la función zip(), que toma múltiples arrays y devuelve un nuevo array que contiene sub-arrays de elementos de cada array de entrada, agrupados por su posición. Esta es una técnica útil en el procesamiento y análisis de datos, y se puede utilizar para combinar datos de múltiples fuentes en una sola estructura de datos para su análisis ulterior.


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/destr_assign("Destructuring Assignment") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/data_types -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/arith_ops -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/comp_ops -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/array_methods -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/higher_funcs -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/destr_assign -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} javascript/spread_rest -.-> lab-28367{{"Agrupar datos de múltiples arrays"}} end

Agrupar elementos de un array

Para agrupar los elementos de arrays según su posición en los arrays originales, utiliza la función zip que se proporciona a continuación.

  • Abre la Terminal/SSH y escribe node para comenzar a practicar la codificación.
  • La función zip utiliza Math.max() y Function.prototype.apply() para obtener el array más largo de los argumentos.
  • Crea un array con esa longitud como valor de retorno y utiliza Array.from() con una función de mapeo para crear un array de elementos agrupados.
  • Si las longitudes de los arrays de argumentos varían, se utiliza undefined donde no se puede encontrar ningún valor.
const zip = (...arrays) => {
  const maxLength = Math.max(...arrays.map((x) => x.length));
  return Array.from({ length: maxLength }).map((_, i) => {
    return Array.from({ length: arrays.length }, (_, k) => arrays[k][i]);
  });
};

Uso de ejemplo:

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

Resumen

¡Felicitaciones! Has completado el laboratorio de Agrupar elementos de un array. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.