En programmation, la portée est définie comme l'accessibilité de la variable. Ou en termes plus techniques, c'est la référence au contexte du code. Ainsi, comment pouvons-nous faire la distinction entre la portée des variables, et sur quels facteurs dépendent cette «portée»? Eh bien, nous allons couvrir tout ce qui concerne la portée variable en javascript.
Portée variable en javascript
En JavaScript, il existe 3 types de portée variable, à savoir:
Bien qu'il n'y ait pas seulement deux types de lunettes avant ES6, la portée mondiale et la portée locale. Mais, avec la portée locale ES6 a été décomposée en portée de la fonction et en bloc.
Commençons par la portée mondiale en premier.
Portée mondiale
Les variables définies en dehors de tout fonction ou frisé Les supports sont connus sous le nom de variables mondiales et ont une portée mondiale. La portée globale signifie que les variables sont accessibles à partir de n'importe quelle partie de ce programme, toute fonction ou état conditionnel peut accéder à cette variable.
Par exemple
var name = "LinuxHint";Sortir
Note: Ce n'est pas une bonne pratique d'utiliser des variables globales lorsqu'elles ne sont pas nécessaires car chaque bloc de code aura accès à ces variables.
Portée locale
Si vous deviez définir certaines variables à l'intérieur accolades ou à l'intérieur d'une fonction spécifique, alors ces variables sont appelées variables locales, les variables locales ont une portée très confinée qui est appelée portée locale mais, avec la libération d'ES6, la portée locale a été divisée en deux lunettes différentes:
Portée de la fonction
La portée de la fonction est l'accessibilité des variables définies à l'intérieur d'une fonction, ces variables ne sont pas accessibles à partir de toute autre fonction ou même en dehors de la fonction dans le fichier principal.
Par exemple
Tout d'abord, nous avons créé une variable à l'intérieur d'une fonction et l'avons accédé à l'intérieur de la fonction:
Sortir
Vous pouvez voir dans la sortie qu'il fonctionne parfaitement comme prévu.
Cependant, si nous essayons d'accéder à cette variable en dehors de la fonction, nous obtenons une erreur:
fonction abc ()Portée
La portée du bloc est également un sous-type de portée locale. La portée du bloc peut être définie comme la portée des variables à l'intérieur du accolades . Maintenant, ces supports bouclés peuvent être de boucles, ou de déclarations conditionnelles, ou autre chose. Vous êtes uniquement autorisé à vous référer à ces variables à l'intérieur du accolades .
Imaginez une situation imbriquée:
Un bloc de code enfermé avec accolades contenant des variables de bloc.
Ce bloc de code est lui-même à l'intérieur d'une fonction.
fonction de fonction ()Maintenant, lorsque nous essayons d'accéder aux variables de l'intérieur de la fonction mais en dehors de ce bloc spécifique.
fonction de fonction ()Et pour accéder à cette fonction, nous devons l'invoquer par:
ajout();Ensuite, nous aurons une erreur, même si ce sont des variables locales de la même fonction.
Les mots clés laisser et const sont utilisés pour définir les variables de bloc.
Par exemple
Le suivant vérifie les marques obtenues par un étudiant et montre si l'étudiant est passé ou a échoué.
Nous avons créé une variable locale en bloc accolades en utilisant le mot-clé laisser. Nous pouvons même remplacer ce LET par le const. La sortie est comme:
Si vous essayez de vous référer à la variable locale de l'extérieur de la fonction, vous obtiendrez une erreur «Le statut (nom de variable) n'est pas défini»:
Note: Pour se référer au «statut»Variable, nous appelons le console.enregistrer() fonction de l'extérieur des supports conditionnels;
Importance du mot-clé LET et const tout en déclarant les variables de bloc
Si vous déclarez une variable à l'intérieur accolades sans utiliser le laisser et le const Mots-clés puis la variable sera déclarée «Variable globale". Cela est dû au fait que les mots clés ont leurs portées prédéfinies. Pour en savoir plus sur la déclaration de mots clés variables. Pour le montrer, nous allons supprimer le laisser Mot-clé de l'extrait de code ci-dessus et exécutez le code.
Comme vous pouvez le voir clairement, nous avons pu accéder à cette variable en dehors du accolades , ce qui signifie que la variable sans les mots clés «Let» et «const» est défini avec une portée globale.
Conclusion
Les variables sont «la partie la plus essentielle» d'un langage de programmation. Les variables ont des lunettes différentes selon la façon dont elles sont déclarées. En JavaScript, une variable peut être l'une des trois lunettes différentes, globales, locales et blocs. Nous avons appris comment ces lunettes variables fonctionnent en javascrip.