Heim > Artikel > Web-Frontend > Wie rufe ich statische Methoden in ES6-Klassen auf: Konstruktor vs. Klassenname?
So rufen Sie statische Methoden in ES6-Klassen auf
Beim Umgang mit statischen Methoden in ES6-Klassen gibt es zwei Hauptansätze, um sie aufzurufen. Die Wahl zwischen den beiden hängt von Ihren spezifischen Anforderungen und Erwartungen ab.
Verwendung des Konstruktors
Die erste Methode beinhaltet die Verwendung der Konstruktorfunktion der Klasse. Zum Beispiel im folgenden Beispiel:
class SomeObject { constructor(n){ this.n = n; } static print(n){ console.log(n); } printN(){ this.constructor.print(this.n); } }
Um die statische Druckmethode aufzurufen, können Sie this.constructor.print(n) innerhalb von Instanzmethoden verwenden, wie in printN angegeben.
Verwendung des Klassennamens
Der zweite Ansatz besteht darin, die statische Methode direkt über den Klassennamen aufzurufen. Weiter mit dem vorherigen Beispiel:
SomeObject.print(n);
Überlegungen zur Vererbung
Beim Überschreiben statischer Methoden in Unterklassen können die beiden Ansätze unterschiedliche Auswirkungen haben:
Welchen Ansatz wählen?
Der am besten geeignete Ansatz hängt von Ihrem gewünschten Verhalten ab. Wenn Sie statische Methoden wünschen, die immer auf die Klasse verweisen, zu der sie gehören, verwenden Sie den expliziten Klassennamen. Wenn Sie dynamischen Versand bevorzugen, bei dem überschriebene statische Methoden verwendet werden, verwenden Sie this.constructor.
Das obige ist der detaillierte Inhalt vonWie rufe ich statische Methoden in ES6-Klassen auf: Konstruktor vs. Klassenname?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!