En JavaScript, les fonctions sont first class objects. Vous pouvez les stocker dans des objets (variables) et les passer comme arguments aux fonctions. Chaque fonction est en fait un objet Function
.
Vous n'avez pas de fonction de rappel dans cet exemple. Vous en auriez un lorsque vous passeriez une fonction en tant qu'argument à une autre fonction.
C'est une fonction qui appelle une fonction de rappel lorsqu'il est prêt:
function load (ready_callback) {
// do some stuff
ready_callback();
}
qui peut être invoqué comme suit:
function callback() {
alert('Ready');
}
load(callback);
Ou:
var callback = function() {
alert('Ready');
}
load(callback);
Ou:
load(function() {
alert('Ready');
});
Les trois exemples ci-dessus sont à peu près équivalents.
Les fonctions de rappel sont généralement utilisées pour la gestion des événements et les méthodes asynchrones. Un exemple est la méthode setTimeout()
, qui appelle une fonction de rappel lorsqu'un délai d'expiration expire:
var timerCallback = function() {
alert('Timeout Expired!');
}
setTimeout(timerCallback, 5000); // Set the timeout to 5 seconds