Une fermeture est une fonction qui peut lire les variables internes d'autres fonctions. Puisqu'en JavaScript, seules les sous-fonctions à l'intérieur d'une fonction peuvent lire les variables locales, les fermetures peuvent être comprises comme des « fonctions définies à l'intérieur d'une fonction ». Essentiellement, les fermetures constituent le pont entre l’intérieur d’une fonction et l’extérieur de la fonction.
Les fermetures JavaScript
permettent aux définitions de fonction et aux expressions de fonction en JavaScript d'être à l'intérieur du corps de fonction d'une autre fonction (fonction interne) , et les fonctions internes peuvent accéder à toutes les variables locales, paramètres et autres fonctions internes dans la déclaration de la fonction externe dans laquelle elles se trouvent. Lorsqu'une des fonctions internes est appelée en dehors de la fonction externe, une fermeture sera formée
Les trois caractéristiques majeures des fermetures sont :
Fonction fonctions imbriquées <.>
2. Les fonctions internes peuvent accéder aux variables des fonctions externes3. Les paramètres et variables ne seront pas recyclés.Utilisations des fermetures
Les fermetures peuvent être utilisées dans de nombreux endroits. Il a deux utilisations principales : l’une consiste à lire les variables à l’intérieur de la fonction, comme mentionné précédemment, et l’autre consiste à conserver les valeurs de ces variables en mémoire.Remarques sur l'utilisation des fermetures
1) Étant donné que les fermetures entraîneront le stockage des variables de la fonction en mémoire, la consommation de mémoire est très importante, elles ne peuvent donc pas être Une fermeture abusive, sinon cela entraînerait des problèmes de performances sur la page Web et pourrait provoquer des fuites de mémoire dans IE. La solution consiste à supprimer toutes les variables locales inutilisées avant de quitter la fonction. 2) La fermeture modifiera la valeur de la variable à l'intérieur de la fonction parent en dehors de la fonction parent. Par conséquent, si vous utilisez la fonction parent comme objet, la fermeture comme méthode publique et les variables internes comme valeur privée, vous devez faire attention à ne pas modifier librement la valeur de la variable à l'intérieur de la fonction parent.Résumé :
1. Une fermeture fait référence à une fonction qui a le droit d'accéder aux variables dans la portée d'une autre fonction. consiste à créer une autre fonction au sein d'une fonction et à accéder aux variables locales de cette fonction via une autre fonction. L'inconvénient des fermetures est qu'elles résident en mémoire, ce qui augmente l'utilisation de la mémoire. Une mauvaise utilisation peut facilement provoquer des fuites de mémoire. 2. Ne vous inquiétez pas de ce qui compte comme une fermeture. En fait, chaque fonction que vous écrivez compte comme une fermeture. Même s'il s'agit d'une fonction globale, lorsque vous accédez à des variables globales en dehors de la fonction, c'est le cas. une manifestation de clôture.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!