JavaScript | devoluciones de llamada

Las devoluciones de llamada son una excelente manera de manejar algo después de que se haya completado otra cosa. Por algo aquí nos referimos a la ejecución de una función. Si queremos ejecutar una función justo después de la devolución de alguna otra función, se pueden usar las devoluciones de llamada.

Las funciones de JavaScript tienen el tipo de Objetos. Entonces, al igual que cualquier otro objeto (String, Arrays, etc.), se pueden pasar como argumento a cualquier otra función durante la llamada.

Código JavaScript para mostrar el funcionamiento de la devolución de llamada:

Código #1:

<script>
  
   // add() function is called with arguments a, b
   // and callback, callback will be executed just 
   // after ending of add() function
   function add(a, b , callback){
   document.write(`The sum of ${a} and ${b} is ${a+b}.` +"<br>");
   callback();
   }
     
   // disp() function is called just
   // after the ending of add() function 
   function disp(){
   document.write('This must be printed after addition');
   }
     
   // Calling add() function
   add(5,6,disp);    
     
</script>

Producción:

The sum of 5 and 6 is 11.
This must be printed after addition

Explicación:
aquí están las dos funciones: agregar (a, b, devolución de llamada) y disp(). Aquí se llama a add() con la función disp(), es decir, se pasa como tercer argumento a la función add junto con dos números.

Como resultado, add() se invoca con 1, 2 y disp(), que es la devolución de llamada. El add() imprime la suma de los dos números y tan pronto como se hace, ¡se activa la función de devolución de llamada! En consecuencia, vemos lo que hay dentro de disp() como la salida debajo de la salida de suma.

Código n.º 2:
a continuación se muestra una forma alternativa de implementar el código anterior con funciones anónimas pasadas.

<script>
  
   // add() function is called with arguments a, b
   // and callback, callback will be executed just 
   // after ending of add() function
   function add(a, b , callback){
   document.write(`The sum of ${a} and ${b} is ${a+b}.` +"<br>");
   callback();
   }
   
   // add() function is called with arguments given below
   add(5,6,function disp(){
   document.write('This must be printed after addition.');
   });
     
</script>

Producción:

The sum of 5 and 6 is 11.
This must be printed after addition.

Las devoluciones de llamada se utilizan principalmente al manejar operaciones asincrónicas como: realizar una solicitud de API a Google Maps, obtener/escribir algunos datos de/en un archivo, registrar oyentes de eventos y cosas relacionadas. Todas las operaciones mencionadas utilizan devoluciones de llamada. De esta manera, una vez que se devuelven los datos/errores de la operación asíncrona, las devoluciones de llamada se usan para hacer algo con eso dentro de nuestro código.

Publicación traducida automáticamente

Artículo escrito por syntaxer y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *