Il existe deux manières couramment utilisées pour créer des fermetures en JavaScript.
Méthode constructeur :
new function() { var 变量... }
Méthode d'exécution en ligne :
(function() { var 变量... })();
Quelles sont les différences entre eux dans le cadre du mécanisme de fonctionnement interne de JavaScript ? Quelle est la meilleure façon de créer ? Quels avantages présente-t-elle par rapport aux fermetures créées par d’autres moyens ?
Voici comment je le comprends :
Différence :
Première : les sous-méthodes peuvent partager des variables
Deuxièmement : variables partagées internes de la sous-méthode
Comparez :
Je pense qu'en ligne, c'est mieux ;
Avantages :
Généralement, la création en ligne nécessite de la mémoire à la demande, car seules les variables exécutées localement sont en mémoire. Les codes associés et dépendants peuvent être organisés pour minimiser le risque d'interactions inattendues et construire toutes les variables d'exécution de méthode doivent être stockées en mémoire, ce qui affectera les performances de la page Web. Il est recommandé de supprimer les variables avant de quitter
Bien sûr, ce n'est que ma compréhension personnelle. En fait, l'utilisation de fermetures entraînera généralement des fuites de mémoire, en particulier sous le navigateur du noyau IE. Il est préférable de supprimer les variables après leur utilisation.
Ce qui précède représente l'intégralité du contenu de cet article, j'espère que vous l'aimerez tous