Maison  >  Article  >  interface Web  >  ## D'où viennent les paramètres de la fonction de rappel en JavaScript ?

## D'où viennent les paramètres de la fonction de rappel en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-26 09:26:30235parcourir

##  Where Do Callback Function Parameters Come From in JavaScript?

D'où proviennent les paramètres des fonctions de rappel JavaScript ?

Dans le contexte des fonctions de rappel, d'où proviennent les paramètres, tels que le req et res dans l'exemple Node.js, viennent-ils ? Cette question se pose lorsque les fonctions de rappel sont exécutées après avoir été passées en paramètres à une autre fonction.

Percer le mystère des paramètres des fonctions de rappel

Pour comprendre l'origine de ces paramètres, il est crucial de se rappeler qu'elles proviennent de la même source que dans les fonctions non-rappel classiques : au moment de l'invocation.

Considérez la fonction non-rappel suivante :

<code class="javascript">function add(a, b) {
  return a + b;
}</code>

Dans ce Par exemple, vous savez que a et b proviennent de l'invocation de la fonction add :

<code class="javascript">add(1, 2);</code>

Le même principe s'applique aux fonctions de rappel. Leurs paramètres leur sont transmis lorsqu'ils sont invoqués.

Le contexte d'invocation des fonctions de rappel

Dans le cas de l'exemple Node.js, la fonction de rappel est invoquée lorsque router.get est exécuté. Imaginons une définition simplifiée de router.get :

<code class="javascript">router.get = function(endpoint, cb) {
  // Do something
  var request = {};
  var response = {};
  cb(request, response); // Invocation time
};</code>

Lorsque router.get est invoqué avec un point de terminaison et une fonction de rappel spécifiques, il crée des objets de requête et de réponse et les transmet en tant que paramètres au rappel.

Dans votre exemple, lorsque .get est appelé, Node.js est responsable de transmettre la requête et la réponse à votre fonction de rappel, vous permettant de les utiliser sans les déclarer explicitement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn