Maison > interface Web > js tutoriel > Références de fonctions et appels de fonctions : quand utiliser lesquels ?

Références de fonctions et appels de fonctions : quand utiliser lesquels ?

Patricia Arquette
Libérer: 2024-12-21 11:19:10
original
228 Les gens l'ont consulté

Function References vs. Function Calls: When to Use Which?

Références de fonction et appels de fonction : différencier leurs rôles

En programmation, la distinction entre les références de fonction et les appels de fonction est cruciale. Une référence de fonction contient une adresse vers une fonction, tandis qu'un appel de fonction exécute la fonction immédiatement.

Comprendre la distinction

Considérez le code suivant :

function hello() {
 alert("hi!");
}

var elem = document.getElementById("btn");
elem.onclick = hello;
Copier après la connexion

Ici, elem.onclick attribue une référence de fonction à la propriété onclick. La référence pointe vers la fonction hello mais ne l'exécute pas. Ceci est nécessaire car onclick attend une référence à une fonction, pas l'exécution de la fonction.

En revanche, considérez ce code :

element.onclick = funcRef();
Copier après la connexion

Ce code exécute la fonction funcRef immédiatement et attribue sa valeur de retour (pas la référence) à la propriété onclick. Évitez cette approche car elle peut entraîner un comportement inattendu, surtout si la valeur de retour n'est pas elle-même une fonction.

Directives pour les références de fonctions et les appels de fonctions

  • Fournissez une référence à une fonction lorsqu'un gestionnaire d'événements ou un autre mécanisme l'attend, par exemple lors de l'attribution à la propriété onclick.
  • Appelez une fonction en utilisant entre parenthèses lorsque vous souhaitez l'exécuter immédiatement, comme dans ce qui suit :
funcRef();
Copier après la connexion
  • Lorsqu'une fonction anonyme est nécessaire pour une utilisation ultérieure, attribuez-la à une variable ou transmettez-la en tant que argument à une autre fonction :
element.onclick = function () {
    // Code here
};
Copier après la connexion

N'oubliez pas que la principale différence réside dans le fait de savoir si la fonction doit être exécutée immédiatement ou si une simple référence à celle-ci est requise. En appliquant ces directives, vous pouvez gérer efficacement les références de fonctions et les appels de fonctions dans votre code.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal