Maison >interface Web >js tutoriel >Comment éviter d'exécuter immédiatement des fonctions passées en paramètres en JavaScript ?

Comment éviter d'exécuter immédiatement des fonctions passées en paramètres en JavaScript ?

DDD
DDDoriginal
2024-12-01 12:59:13696parcourir

How to Avoid Immediately Executing Functions Passed as Parameters in JavaScript?

Passer des fonctions en tant que paramètres en JavaScript

Passer des fonctions en tant que paramètres vous permet de créer du code réutilisable et personnalisable. Cependant, l’exécution de la fonction au sein de la fonction parent peut s’avérer indésirable. Voici comment éviter cela.

Problème :

Considérez le code suivant :

addContact(entityId, refreshContactList());

Cette instruction appelle immédiatement rafraîchirContactList(), même si il est destiné à être exécuté plus tard.

Solution :

Pour passer la fonction sans l'exécuter, supprimez simplement les parenthèses :

addContact(entityId, refreshContactList);

Exemple :

function addContact(id, refreshCallback) {
    refreshCallback();
    // You can also pass arguments if you need to
    // refreshCallback(id);
}

function refreshContactList() {
    alert('Hello World');
}

addContact(1, refreshContactList);

Dans ce scénario,freshContactList() est passé en paramètre et sera être exécuté dans la fonction addContact().

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