Mapeo de Elementos Consecutivos

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 la función mapConsecutive en JavaScript. Esta función nos permite aplicar una función dada a elementos consecutivos de un array. Aprenderemos a utilizar esta función para manipular arrays de manera concisa y eficiente.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic 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/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28479{{"Mapeo de Elementos Consecutivos"}} javascript/data_types -.-> lab-28479{{"Mapeo de Elementos Consecutivos"}} javascript/arith_ops -.-> lab-28479{{"Mapeo de Elementos Consecutivos"}} javascript/comp_ops -.-> lab-28479{{"Mapeo de Elementos Consecutivos"}} javascript/higher_funcs -.-> lab-28479{{"Mapeo de Elementos Consecutivos"}} end

Función para Aplicar una Función a Elementos Consecutivos en un Array

Para comenzar a codificar, abre la Terminal/SSH y escribe node.

Esta función aplica una función dada fn a cada bloque de n elementos consecutivos en un array. Sigue estos pasos:

  • Utiliza Array.prototype.slice() para obtener un nuevo array arr con los primeros n elementos eliminados.
  • Utiliza Array.prototype.map() y Array.prototype.slice() para aplicar fn a cada bloque de n elementos consecutivos en arr.

Aquí está el código:

const mapConsecutive = (arr, n, fn) =>
  arr.slice(n - 1).map((v, i) => fn(arr.slice(i, i + n)));

Por ejemplo, puedes utilizar mapConsecutive() para aplicar una función a cada bloque de 3 elementos consecutivos en un array de números, uniendo los elementos con guiones:

mapConsecutive([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3, (x) => x.join("-"));
// ['1-2-3', '2-3-4', '3-4-5', '4-5-6', '5-6-7', '6-7-8', '7-8-9', '8-9-10'];

Resumen

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