Passer une fonction JavaScript en tant que paramètre sans exécution
Cela peut être problématique lors du passage de fonctions en tant que paramètres et du déclenchement de leur exécution prématurément. Au lieu d'utiliser eval() ou de subir les inconvénients d'un appel immédiat de fonction, il existe une solution plus simple.
Pour passer une fonction JavaScript en paramètre sans l'exécuter dans la fonction parent, supprimez simplement les parenthèses après le nom de la fonction. :
addContact(entityId, refreshContactList);
En omettant les parenthèses, vous transmettez essentiellement la référence à la fonction, lui permettant d'être appelée dans la fonction parent selon les besoins.
Voici un exemple pour illustrer :
function addContact(id, refreshCallback) { refreshCallback(); // Call the passed function } function refreshContactList() { alert('Hello World'); } addContact(1, refreshContactList);
Dans cet exemple, rafraîchirCallback fait référence à la fonction rafraîchirContactList sans l'exécuter. Lorsque la fonction addContact appelle rafraîchirCallback(), rafraîchirContactList est exécuté.
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!