Maison > interface Web > js tutoriel > Pourquoi appeler des fonctions JavaScript anonymes immédiatement après la définition ?

Pourquoi appeler des fonctions JavaScript anonymes immédiatement après la définition ?

Susan Sarandon
Libérer: 2024-12-03 12:55:11
original
639 Les gens l'ont consulté

Why Invoke Anonymous JavaScript Functions Immediately After Definition?

Pourquoi appeler des fonctions anonymes sur la même ligne ?

Lorsque vous travaillez avec des fermetures, il est courant d'invoquer une fonction anonyme sur la même ligne que celle où elle est défini. Bien que cela puisse sembler arbitraire, cela est essentiel pour une bonne exécution en raison de la façon dont JavaScript gère les déclarations de fonctions.

Définition des fonctions en JavaScript

JavaScript autorise trois méthodes pour définir les fonctions :

  • Constructeur de fonction : new Function('args', 'body')
  • Déclaration de fonction : nom de la fonction (args) { body }
  • Expression de fonction : var name = function(args) { body >

La principale différence entre les déclarations et les expressions est que les déclarations nécessitent un identifiant (nom) alors que les expressions peuvent être anonyme.

Fonctions anonymes et sauts de ligne

Les fonctions anonymes se comportent différemment des fonctions nommées. Lors de l'écriture d'une expression de fonction anonyme, vous pouvez éventuellement fournir un identifiant entre parenthèses, mais ce n'est pas nécessaire.

Si vous coupez la ligne après avoir défini une fonction anonyme, JavaScript l'interprète comme une déclaration de fonction. Cependant, comme aucun identifiant n'est fourni, la déclaration devient une syntaxe invalide.

Exemple :

Ce code crée une expression de fonction anonyme et l'invoque sur la même ligne :

Exemple invalide :

Si vous coupez la ligne et omettez le parenthèses, cela devient une déclaration de fonction mal formée :

Pour que cela fonctionne, vous devez ajouter des parenthèses pour invoquer l'expression de fonction anonyme :

Conclusion

L'appel de fonctions anonymes sur la même ligne garantit qu'elles sont correctement exécutées en tant qu'expressions de fonction, les empêchant d'être interprétés à tort comme des déclarations de fonctions avec des identifiants manquants.

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