Comment définir des méthodes privées en javascript

Comment définir des méthodes privées en javascript
L'idée derrière l'utilisation de méthodes privées est simple. Lorsque vous voulez garder quelque chose de privé, que ce soit une méthode ou une propriété, dans ce scénario, vous pouvez définir méthodes privées ou des propriétés privées, qui sont utilisées pour cacher la fonctionnalité intérieure d'une classe des autres classes. Dans une classe JavaScript, vous pouvez ajouter des champs privés, des méthodes d'instructions privées, des méthodes statiques privées et des getters privés et des setters.

Cet article expliquera la procédure à Définir les méthodes privées dans Javascrip. Alors, commençons!

Méthodes privées en JavaScript

Le type de méthodes qui ne sont pas accessibles en dehors de la classe où il est défini ou par la classe de base est connu sont des méthodes privées. Ces méthodes sont utilisées pour sécuriser les informations sensibles stockées dans des domaines de classe tels que les informations personnelles ou les mots de passe.

Dans une classe JavaScript, déclarer quelque chose comme «privé,"Qui peut être une méthode, une propriété ou un getteur et un setter, vous devez préfixer son nom avec le caractère de hachage"#".

Syntaxe de la méthode d'instance privée

classe newclass
#privateMethod ()
// Corps de privateméthode

Dans la syntaxe donnée ci-dessus, la méthode d'instance privée est «#privateMethod », qui ne peut être invoqué que dans «Newclass"Et vous ne pouvez pas y accéder dans la sous-classe de"Newclass"Ou de l'extérieur.

"ce»Le mot-clé est utilisé pour appeler«#privateMethod ()"À l'intérieur du créé"Newclass»:

ce.#privateMethod ();

Méthodes statiques privées en javascript

Les méthodes statiques privées sont chargées dans la mémoire avant de créer une instance de cette classe spécifique et elles sont indépendantes de l'instanciation de la classe.

Syntaxe pour définir une méthode statique privée

Dans un programme JavaScript, pour définir une méthode statique privée, vous devez utiliser le mot-clé "statique«Avant d'ajouter le nom de la méthode avec le«#" personnage:

classe newclass
statique #privateStaticMethod ()
// corps du privatestaticMethod

Maintenant, pour invoquer la méthode privée statique créée, nous spécifierons le nom de classe «Newclass" à la place d'utiliser "ce" mot-clé:

Newclass.#privateStaticMethod ();

Getters privés et sets en javascript

En JavaScript, les getters privés et les setters sont utilisés pour récupérer et définir les champs privés d'une classe.

Syntaxe pour définir des getters privés et des setteurs

En JavaScript, "obtenir" et "ensemble»Les mots clés sont utilisés pour créer des getters et des setters pour les champs privés:

classe newclass
#Firstfield;
get #field ()
retour #Firstfield;

set #field (valeur)
#FirstField = valeur;

Comment définir des méthodes privées en javascript

Les méthodes privées en JavaScript peuvent garder vos données privées. Il est préféré de définir toutes les méthodes de classe comme «privé" par défaut. Après cela, si un objet doit interagir avec d'autres objets de classe, vous pouvez le transformer en «public" méthode.

Exemple: comment définir des méthodes privées en JavaScript
Tout d'abord, nous créerons un «Employé«Classe ayant deux champs privés:«#nom" et "#désignation". Après cela, nous ajouterons un constructeur:

Employé de classe
#nom;
#désignation;
constructeur (nom, désignation)
ce.#Name = name;
ce.#Designation = désignation;

Ensuite, nous définirons les méthodes privées "#Nom de l'employé()" et " #EMPLOYEEDESIGNATION ()«Pour obtenir les valeurs des champs privés ajoutés:

#Nom de l'employé()
return '$ this.#nom';

#EMPLOYEEDESIGNATION ()
return '$ this.#désignation';

UN "showInfo ()«La fonction publique est également ajoutée dans notre classe d'employés qui invoquera les méthodes privées suivantes:

showInfo (format = true)
console.journal (ceci.#EMPloyEename (), ceci.#EMPLOYEEDESIGNATION ());

Après avoir mis en place la classe des employés, nous créerons un «employé"Objet en passant"Alex" et "Directeur«Comme les valeurs du«nom" et "désignation" des champs:

Soit Employee = New Employee («Alex», «Manager»);

Enfin, nous invoquerons le «showInfo ()«Méthode en utilisant l'objet employé:

employé.showInfo ();

L'exécution du programme ci-dessus affichera les valeurs de champ privé de «employé”Objet dans la console:

Exemple: comment définir des méthodes statiques privées en javascript
Nous ajouterons un "#vérifier()«Méthode statique privée chez l'employé avec«nom»Paramètre. Le "#vérifier()"La méthode vérifiera si la longueur de"nom"Est supérieur ou égal à"4«;; Sinon, cela mettra une exception indiquant que «Le nom entré doit être une chaîne ayant au moins 4 caractères".

La méthode privée statique mentionnée sera ajoutée dans le constructeur de la classe des employés afin qu'il puisse valider le «nom”Argument avant de l'affecter à l'attribut correspondant:

Employé de classe
#nom;
#désignation;
constructeur (nom, désignation)
ce.#Name = Employé.#vérifier le nom);
ce.#designation = désignation;
statique #verify (name)
if (typeof name === 'string')
Soit str = nom.garniture();
si (str.longueur === 4)
retour STR;


Jetez «le nom entré doit être une chaîne ayant au moins 4 caractères»;

#Nom de l'employé()
return '$ this.#nom';

#EMPLOYEEDESIGNATION ()
return '$ this.#désignation';

showInfo (format = true)
console.journal (ceci.#EMPloyEename (), ceci.#EMPLOYEEDESIGNATION ());

Dans le premier cas, nous créerons un «employé”Objet et passer un nom qui remplira la condition ajoutée dans la méthode privée statique #verify ():

Soit Employee = New Employee («Alex», «Manager»);
employé.showInfo ();

Après avoir validé le champ #Name, il peut être facilement récupéré par la méthode showInfo ():

Pour la deuxième fois, nous spécifierons un nom qui comprend trois caractères:

Soit Employee = New Employee («Sia», «Manager»);
employé.showInfo ();

Vous pouvez voir à partir de la sortie ci-dessous que la méthode privée statique ajoutée a lancé une exception pour le nom de l'employé:

Le nom "Sia«Ce que nous avons réussi dans le constructeur des employés n'est pas selon le«si”Instruction spécifiée dans la méthode statique #verify (). C'est pourquoi le «employé»L'instance n'est pas créée.

Pourquoi devriez-vous utiliser des méthodes privées en javascript

Voici une liste de certains des avantages de l'utilisation de méthodes privées en JavaScript:

  • Encapsulation est l'un des principaux avantages de l'utilisation de méthodes privées car elle permet aux interfaces de masquer les détails de mise en œuvre d'autres classes.
  • Il améliore également le lisibilité du code.
  • La définition des méthodes privées assure également le code réutilisation et évite la duplication du code.
  • Si vous déclarez toutes vos méthodes comme «publiques», vous devez garder un contrôle sur qui va lire et apporter des modifications aux propriétés de la classe.

Conclusion

Les méthodes privées sont définies en JavaScript pour masquer les méthodes de classe cruciales ou garder des informations sensibles privées. Dans une classe, pour définir une instance de méthode privée, une méthode statique privée ou un getteur privé et un secteur, vous devez préfixer son nom avec le caractère de hachage #. Cet article a expliqué la procédure pour définir les méthodes privées en JavaScript à l'aide d'exemples appropriés.