Maison > Article > interface Web > Comment appeler des méthodes statiques dans les classes ES6 : constructeur vs nom de classe ?
Comment appeler des méthodes statiques dans les classes ES6
Lorsqu'il s'agit de méthodes statiques dans les classes ES6, il existe deux approches principales pour les invoquer. Le choix entre les deux dépend de vos besoins et attentes spécifiques.
Utilisation du constructeur
La première méthode consiste à utiliser la fonction constructeur de la classe. Par exemple, dans l'exemple suivant :
class SomeObject { constructor(n){ this.n = n; } static print(n){ console.log(n); } printN(){ this.constructor.print(this.n); } }
Pour appeler la méthode d'impression statique, vous pouvez utiliser this.constructor.print(n) dans les méthodes d'instance, comme indiqué dans printN.
Utilisation du nom de classe
La deuxième approche consiste à invoquer la méthode statique directement via le nom de la classe. En reprenant l'exemple précédent :
SomeObject.print(n);
Considérations sur l'héritage
Lors du remplacement de méthodes statiques dans les sous-classes, les deux approches peuvent avoir des implications différentes :
Quelle approche choisir ?
L'approche la plus appropriée dépend du comportement souhaité. Si vous souhaitez que des méthodes statiques fassent toujours référence à la classe à laquelle elles appartiennent, utilisez le nom de classe explicite. Si vous préférez la répartition dynamique, où des méthodes statiques remplacées sont utilisées, utilisez this.constructor.
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!