Zum Inhalt springen

Statische Klassenmitglieder in JavaScript

Statische Eigenschaften und Methoden sind grundlegende Aspekte von JavaScript und ermöglichen es, Daten und Funktionalität einer Klasse statt den Instanzen der Klasse zuzuordnen. Das bedeutet, dass auf sie zugegriffen werden kann, ohne eine Instanz der Klasse zu erstellen. Statische Eigenschaften und Methoden werden häufig für Hilfsfunktionen und Konstanten verwendet, die die Klasse als Ganzes betreffen, statt ein einzelnes Objekt.

Statische Eigenschaften und Methoden definieren

Statische Eigenschaften und Methoden werden mit dem Schlüsselwort static innerhalb einer Klasse definiert. So können Sie sie definieren und verwenden:


Output appears here after Run.

In diesem Beispiel ist pi eine statische Eigenschaft und sum eine statische Methode der Klasse Calculator. Auf sie kann direkt über den Klassennamen zugegriffen werden, ohne sie zu instanziieren.

Hinweis: Die in diesen Beispielen verwendete Syntax für Klassenfelder (static pi = ...) erfordert ES2022+ oder einen Transpiler wie Babel. Außerdem können statische Methoden nicht direkt über this auf Instanzeigenschaften zugreifen, da sie zur Klasse selbst und nicht zu einer bestimmten Instanz gehören.

Praktische Anwendungsfälle statischer Methoden

Statische Methoden sind äußerst vielseitig. Sie werden oft für Hilfsfunktionen verwendet, etwa für mathematische Operationen, oder um Factory-Methoden zu erstellen, die Instanzen der Klasse anhand bestimmter Kriterien zurückgeben. Hier ist ein Beispiel:


Output appears here after Run.

Diese Hilfsmethode compare bietet eine Möglichkeit, zwei Produkte anhand ihres Preises zu vergleichen, und zeigt einen praktischen Einsatz statischer Methoden.

Wann statische Eigenschaften verwendet werden sollten

Statische Eigenschaften eignen sich ideal für Konstanten, die sich auf eine Klasse beziehen und unverändert bleiben, unabhängig von einer Klasseninstanz. Sie bieten eine Möglichkeit, von überall in Ihrem Code auf gemeinsam genutzte Daten zuzugreifen. Wenn Sie zum Beispiel eine Klasse haben, die sich mit Benutzerinteraktionen befasst, könnten Sie eine statische Eigenschaft haben, die Standardwerte oder Limits definiert:


Output appears here after Run.

Vorteile der Verwendung statischer Eigenschaften und Methoden

  • Speichereffizienz: Da statische Eigenschaften und Methoden an die Klasse selbst und nicht an Instanzen gebunden sind, vermeiden sie die Duplizierung von Daten oder Funktionen für jedes Objekt, was den Speicherbedarf bei vielen erstellten Instanzen reduzieren kann.
  • Komfort: Statische Methoden können ohne Instanziierung der Klasse aufgerufen werden, was sie für Hilfsfunktionen praktisch macht.
  • Strukturierter Code: Durch das Gruppieren zusammengehöriger Funktionalität direkt innerhalb von Klassen als statische Mitglieder bleibt der Code übersichtlich und Funktionsbereiche sind klar definiert.

Fazit

Statische Eigenschaften und Methoden in JavaScript bieten eine leistungsstarke Möglichkeit, Funktionalität und Daten hinzuzufügen, die sich auf die Klasse als Ganzes beziehen, statt auf einzelne Instanzen. Wenn Entwickler diese Funktionen verstehen und nutzen, können sie effizienteren, besser organisierten und skalierbaren Code schreiben. Anhand der bereitgestellten Beispiele und Erklärungen möchten wir Ihnen das Wissen vermitteln, um statische Eigenschaften und Methoden in Ihren JavaScript-Projekten effektiv zu nutzen, Ihre Entwicklungsfähigkeiten zu verbessern und anspruchsvolle Webanwendungen zu erstellen.

Practice

Which statements are true regarding static properties and methods in JavaScript?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.