Il existe deux manières de déclarer des fonctions en JavaScript : la déclaration de fonction et l'expression de fonction.
Les différences sont les suivantes :
1). Pour les fonctions définies par déclaration de fonction, le nom de la fonction est obligatoire, tandis que le nom de la fonction de l'expression de la fonction est facultatif.
2). Pour les fonctions définies par déclaration de fonction, la fonction peut être appelée avant la déclaration de fonction, tandis que la fonction de l'expression de fonction ne peut être appelée qu'après la déclaration.
3). Les fonctions définies par la déclaration de fonction ne sont pas de vraies déclarations. Elles ne peuvent apparaître que globalement ou imbriquées dans d'autres fonctions, mais elles ne peuvent pas apparaître dans des boucles, des conditions ou try/catch/finally, et
Les expressions de fonction peuvent être déclarées n'importe où.
Les fonctions sont définies de deux manières ci-dessous :
Un javascript intéressant ci-dessous :
Qu'est-ce qui sera affiché ? La première réaction devrait être "Je suis dehors". Le résultat est "Je suis à l'intérieur" dans Chrome, IE11 signale directement une erreur, et la version inférieure de Firefox affiche "Je suis dehors". .
Les résultats générés par Chrome reflètent clairement les caractéristiques des fonctions déclarées à l'aide des déclarations de fonction : la fonction peut être appelée avant d'être déclarée.
L'erreur IE montre que l'objet est manquant car la fonction est déclarée dans la condition, ce qui viole le principe de déclaration de fonction.
Portée de l'expression de la fonction :
Si la fonction déclarée par l'expression de fonction a un nom de fonction, alors le nom de la fonction est équivalent à une variable locale de la fonction et ne peut être appelé qu'à l'intérieur de la fonction.
Ce qui précède représente l’intégralité du contenu de cet article, j’espère que vous l’aimerez tous.