Callbacks en javascript
Una función de callback es una función pasada a otra función como argumento, y que luego se invoca dentro de la función externa para completar algún tipo de rutina o acción, los usamos para asegurarnos de que se ejecute la primera función tarde el tiempo que tarde y despues se ejecute la segunda funcion.
Por ejemplo si yo tengo el siguiente
ejemplo en javascript:
console.log(‘primera funcion’);
}
function segundaFuncion(){
console.log(‘segunda funcion’);
}
primeraFuncion();
segundaFuncion();
El orden de ejecucion es:
- primera funcion
- segunda funcion
Las
funciones se ejecutan secuencialmente una detrás de otra, pero que pasa si por
lo que sea la primera funcion se queda bloqueada, o tarda mas tiempo en
responder.
Como
javascript es un lenguaje orientado a eventos, en lugar de esperar a terminar
la primeraFuncion, ejecutara la segundaFuncion y cuando acabe ejecutara la
primera cuando este disponible
function
primeraFuncion(){
var retardo = functionRetardo(1000);
console.log(‘primera funcion’);
console.log(‘primera funcion’);
}
function
segundaFuncion(){
console.log(‘segunda funcion’);
console.log(‘segunda funcion’);
}
primeraFuncion();
segundaFuncion();
El orden de ejecucion es:
- segunda funcion
- primera funcion
console.log('Hola ' + nombre);
}
function procesarUsuario(callback) { // se pasa la funcion de callback como argumento
var nombre = prompt('Introduce tu nombre: ');
callback(nombre);
}
procesarUsuario(saludar);
Llamamos a procesarUsuario como parametro el nombre de la funcion saludar, callback sustituye a saludar
function Sumar(a, b, callback){
return callback(a+b);
}
Sumar(5, 6, function(r){
console.log('El resultado es ' + r);
})
function sumar(fn,x,y){
console.log(fn(x,y));
}
sumar(function(x,y){
return x+y;
},2,3)
function sumar(fn){
console.log(fn(5,2));
}
sumar( function(x,y){
return x+y;
} )
No hay comentarios:
Publicar un comentario