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

156
Vistas
JavaScript define la función para tomar el parámetro de la función externa

Quiero definir una función:

 const f = (outside, param1, param2) => { outside(param1, param2); }

Pero sé que esta función siempre se llamará dentro de una función que tiene un parámetro externo. Por ejemplo:

 const g = (outside, param3, param4) => { // some code here f(outside, var1, var2); // some more code }

¿Hay alguna forma de definir f para que no tenga que pasar al outside cuando llame al interior de g ?

También quiero poder llamar a f dentro de otras funciones que toman el outside como parámetro, no solo g .

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

0

¿Hay alguna forma de definir f para que no tenga que pasar al outside cuando llame al interior de g ?

No. Está solicitando un alcance dinámico , pero JavaScript usa un alcance léxico . Eso significa que la disponibilidad/visibilidad de los símbolos está determinada por la forma en que se definen las funciones, no por cómo/cuándo/dónde se llaman.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede cambiar el orden de los argumentos y tomar medidas según su existencia:

 const f = (param1, param2, outside) => { if (outside) { outside(param1, param2); } else { ... } }

ACTUALIZAR

Desafortunadamente, una función definida fuera de la función g, no tendrá acceso directo a las variables contenidas en la función g. Por esta razón, necesariamente debe pasar el parámetro fuera de la función f.

about 4 years ago · Juan Pablo Isaza Denunciar

0

¿Y si cambias tu lógica así? ¿Se ajustará a tus necesidades?

 // Set function logic const f = (param1, param2) => { return param1 + param2; } // Outside method const outside = v => { console.log(`I'm outside: ${v}`); } // Call from outside logic const g = (outside, param3, param4) => { // If you know, that it is outside wrapper, wrap it here outside(f(param3, param4)); } g(outside, 2, 2); // Call from else logic console.log(`I'm else logic: ${f(3, 3)}`);

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