Ce message discutera de différents types de Espaces de noms en javascript. Alors, commençons!
Espace de noms JavaScript
Le concept d'ajout de classes, de méthodes, de variables et d'objets à l'intérieur d'un conteneur est connu sous le nom de «Espace de noms»En JavaScript. Le code que vous écrivez dans un programme JavaScript et les méthodes prédéfinies sont stockées dans le «fenêtre«Variable, considérée comme un«Espace de noms global". Cet espace de noms de fenêtre est utilisé chaque fois qu'une nouvelle variable est créée. De plus, stocker toute valeur dans la variable nouvellement créée utilisera son espace de noms. C'est ainsi que la hiérarchie fonctionne en javascript.
Types d'espaces de noms en javascript
JavaScript prend en charge deux types d'espaces de noms:
Nous discuterons en détail des deux types d'espaces de noms mentionnés.
Espace de noms statique en javascript
Lorsqu'un "Étiquette d'espace de noms"Est codé en dur et une fonction est définie à l'intérieur, elle est connue sous le nom de«Espace de noms statique". Il permet la réaffectation des espaces de noms; Cependant, un espace de noms statique fera toujours référence aux mêmes anciens objets JavaScript.
Les espaces de noms statiques en JavaScript sont divisés en catégories ci-dessous:
Maintenant, comprenons la fonctionnalité de chacun des types d'espace de noms statiques donné.
Espace de noms statique avec affectation directe
Dans "Affectation directe», Les fonctions sont définies à l'aide de l'espace de noms statique déjà créé. Par exemple, dans l'exemple suivant, nous créerons un objet nommé «étudiant,”Qui agit comme un espace de noms statique:
var étudiant =Après cela, nous définirons deux fonctions "getName ()" et "getage ()"Et associez-les au"étudiant”Espace de noms:
étudiant.getName = function ()Comme les fonctions sont directement attribuées au «étudiant”Espace de noms, il en résultera la sortie suivante:
Espace de noms statique avec notation littérale objet
Dans ce type d'espace de noms statique, des fonctions sont ajoutées dans le espace de noms à Déclaration d'objet.
Dans le programme pré-donné, nous avons utilisé le objet notation littérale Pour définir un espace de noms statique "étudiant"Et ajoutez le"getName ()" et "getage ()”Fonction dans son champ d'application:
var étudiant =Sortir
Espace de noms statique avec motif de module
Le javascript "modèle de module»Utilise un Emballage de la fonction ce Retour un objet. L'objet retourné fait référence à la logique de l'interface publique du module dans la portée globale.
Ce type d'espace de noms statique invoque la fonction, enregistre la valeur renvoyée à la variable de l'espace de noms et verrouille l'API du module dans la portée de l'espace de noms. Les variables non incluses dans la valeur de retour sont maintenues privées et uniquement accessibles à la fonction qui leur fait référence.
Exemple
Nous allons maintenant définir «étudiant" comme un Espace de noms statique Et enveloppez-le dans une fonction:
La valeur renvoyée par le «getName ()" et "getage ()«Les méthodes seront enregistrées dans la variable d'espace de noms statique créé:
Espace de noms dynamique en javascript
Au lieu de coder en dur une étiquette d'espace de noms, un «Espace de noms dynamique" est référencé dans Emballage de la fonction. Ce type d'espace de noms élimine l'exigence de combinaison de la valeur de retour pour attribuer ces valeurs à l'espace de noms défini. Il est principalement utilisé dans des situations où plusieurs instances indépendantes d'un module sont créées dans différents cas.
L'espace de noms dynamique peut être implémenté en javascript en passant le espace de noms comme un «argument"Ou le définir avec le"appliquer" mot-clé.
Comprenons les deux procédures une par une.
Passer l'espace de noms dynamique comme argument
JavaScript vous permet de créer un Espace de noms dynamique en le passant comme un argument au fonction d'auto-évoquant. Ces fonctions sont définies à l'aide de l'argument passé.
Par exemple, nous créerons un «étudiant"Espace de noms et le passer comme un argument"MST". Après cela, nous définirons le «getName ()" et "getage ()»Fonctions en utilisant le«MST" argument:
var étudiant = ; (fonction (std)L'exécution du programme ci-dessus affichera la sortie suivante:
Création de l'espace de noms dynamique avec un mot-clé applique
Une autre méthode pour créer un Espace de noms dynamique est d'utiliser le «appliquer" mot-clé et le passer comme un argument. Après cela, ajoutez les fonctions requises avec le «ce" mot-clé.
Exemple
var étudiant = ; (function ()Sortir
C'était toutes des informations essentielles concernant le les types de Espaces de noms dans Javascrip. Vous pouvez rechercher davantage au besoin.
Conclusion
Le Espace de noms statique taper coder en dur le étiquette d'espace de noms et définit les fonctions à l'intérieur, et le Espace de noms dynamique type est référencé dans Emballage de la fonction. Dans JavaScript, l'espace de noms statique est créé avec une affectation directe, une notation d'objet et un modèle de module. En revanche, un espace de noms dynamique est défini en le faisant passer comme un argument ou en utilisant le mot-clé Appliquer. Cet article a discuté des types d'espaces de noms en javascript.