Maison  >  Article  >  interface Web  >  Comment définir des méthodes privées dans les classes JavaScript ?

Comment définir des méthodes privées dans les classes JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-03 20:13:29480parcourir

How do you define private methods in JavaScript classes?

Définition de méthodes privées en JavaScript

La création de classes en JavaScript permet une séparation claire des fonctions et des données. Les méthodes publiques sont facilement accessibles, mais comment définir des méthodes privées accessibles uniquement par d'autres méthodes au sein de la classe ?

Pour implémenter des méthodes privées en JavaScript, vous pouvez adopter l'approche suivante :

1. Déclarez des variables privées :

Définissez des variables privées dans la fonction constructeur pour stocker les données qui ne doivent être accessibles qu'au sein de la classe.

2. Créer des fonctions privées :

Définissez des fonctions privées en dehors du prototype de classe. Ces fonctions ne sont accessibles que dans le cadre de la fonction constructeur.

3. Appeler des fonctions privées à partir de méthodes publiques :

Les méthodes publiques peuvent appeler des fonctions privées pour accéder à des données privées et effectuer des tâches spécifiques. Cependant, les fonctions privées ne peuvent pas être appelées directement depuis l'extérieur de la classe.

Par exemple :

<code class="javascript">function Restaurant() {
  var privateVar; // Private variable

  var privateFunction = function() { // Private function
    privateVar = "Private data";
  }

  this.publicMethod1 = function() { // Public method
    privateFunction(); // Can call private function
  }

  this.publicMethod2 = function() { // Public method
    privateFunction(); // Can call private function
  }
}</code>

Dans cet exemple, privateFunction est une fonction privée qui définit la valeur de la variable privée privateVar. Les méthodes publiques publicMethod1 et publicMethod2 peuvent appeler privateFunction pour accéder aux données privées. Cependant, le code externe ne peut pas appeler directement privateFunction.

Limitations :

Cette approche a une limitation principale : les méthodes privées ne peuvent pas faire partie du prototype de classe. Ceci означает, что ты ne peut pas les définir en utilisant la notation abrégée littérale d'objet.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn