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

318
Vistas
¿Cómo evitar las cadenas de devolución de llamada?

Necesito llamar a un montón de funciones en estricto orden. También es muy importante que la siguiente función espere hasta que la anterior haya terminado.

En este momento estoy usando devoluciones de llamada encadenadas:

 callMe1(function(){ callMe2(function(){ callMe3(function(){ callMeFinal(); }); }); });

Esto funciona, pero parece ser un poco feo.

¿Alguna sugerencia para un enfoque diferente?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Si usa jQuery, puede usar la queue para encadenar las funciones.

 $(document) .queue(callMe1) .queue(callMe2);

donde callMeX debe ser de la forma:

 function callMeX(next) { // do stuff next(); }
over 4 years ago · Santiago Trujillo Denunciar

0

Puede implementar un sistema de "pila":

 var calls = []; function executeNext(next) { if(calls.length == 0) return; var fnc = calls.pop(); fnc(); if(next) { executeNext(true); } } /*To call method chain synchronously*/ calls.push(callMe3); calls.push(callMe2); calls.push(callMe1); executeNext(true); /*To call method chain asynchronously*/ calls.push(callMe3); calls.push(function(){ callMe2(); executeNext(false); }); calls.push(function(){ callMe1(); executeNext(false); });
over 4 years ago · Santiago Trujillo Denunciar

0

No estoy seguro de si esto lo ayudaría, pero hay un gran artículo sobre el uso de diferidos en jQuery 1.5 . Podría limpiar un poco tu cadena...

Además, mi respuesta sobre ¿Puede alguien explicarme la cola de jQuery? tiene algunos ejemplos del uso de una cola para garantizar llamadas secuenciales.

over 4 years ago · Santiago Trujillo 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