Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

286
Vistas
Pasar parámetros para reducir la función

He leído este artículo, pero parece que no entiendo correctamente la sintaxis de reducción de JavaScript. ¿Cómo puedo pasar parámetros adicionales a la función de reducción personalizada?

Función reductora de llamadas.

 data = Object.values(data.reduce(reducer, {}));

Ejemplo de función reductora.

 const reducer = (acc, cur) => { if (somethingIsTrue) { return acc; } };

En este momento está funcionando como debería, pero digamos que estoy llamando a la función reductora y quiero pasar una variable simple que contiene "Hola mundo" para que la función no lo vea como un argumento. ¿Cómo puedo conseguir esto?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Puede hacer la composición de funciones para "construir" algo llamado función de orden superior. Básicamente, la idea es crear una función que devuelva una "función secundaria", que tendrá acceso a las variables de la función principal.

 // Parent function (getReducer) function getReducer(stringToAppend) { // Child function (reducer) function reducer(acc, curr) { // Child function has access to parent's variables (in this case stringToAppend) acc[curr] = stringToAppend + curr return acc } return reducer } const data = [0,1,2,3,4,5,6,7,8,9] const result = data.reduce(getReducer("Hello World "), {}) console.log('result :>> ', result);

En consola:

 result :>> { '0': 'Hello World 0', '1': 'Hello World 1', '2': 'Hello World 2', '3': 'Hello World 3', '4': 'Hello World 4', '5': 'Hello World 5', '6': 'Hello World 6', '7': 'Hello World 7', '8': 'Hello World 8', '9': 'Hello World 9' }

Usé la sintaxis de la function porque la encontré más detallada y explícita para explicar esto. Por supuesto, podría utilizar funciones de flecha. Usando la sintaxis de flecha, la función podría verse tan simple como:

 function getReducer (stringToAppend) { return (acc, curr) => { acc[curr] = stringToAppend + curr return acc } }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda