Heim > Web-Frontend > js-Tutorial > Hauptteil

Warum sind private Mitglieder in JavaScript zugänglich, wenn TypeScript verwendet wird?

DDD
Freigeben: 2024-10-28 02:00:02
Original
401 Leute haben es durchsucht

 Why Are Private Members Accessible in JavaScript When Using TypeScript?

Untersuchen privater Member in TypeScript: Verständnis der Barrierefreiheitsdiskrepanz

In TypeScript werden private Member verwendet, um den Zugriff innerhalb der umschließenden Klasse einzuschränken. Es kann jedoch vorkommen, dass Benutzer auf Situationen stoßen, in denen private Mitglieder im JavaScript-Code als zugänglich erscheinen. Um dieses Problem zu klären, werfen wir einen Blick auf die Implementierung privater Member durch TypeScript.

Laut TypeScript-Dokumentation werden private Member nur innerhalb des Compilers zu Zwecken der Typprüfung erzwungen. In reinem JavaScript werden private Mitglieder als reguläre Eigenschaften implementiert. Dies bedeutet, dass Code außerhalb der Klasse potenziell auf sie zugreifen kann.

Im bereitgestellten Beispiel:

class Test {
  private member: any = "private member";
}
alert(new Test().member);
Nach dem Login kopieren

Member wird innerhalb der Klasse Test als privat deklariert, was bedeutet, dass nur innerhalb der Klasse darauf zugegriffen werden sollte die Klasse. Der JavaScript-Code kann jedoch mit new Test().member darauf zugreifen.

Um den Zugriff auf ein Mitglied wirklich einzuschränken, darf es nicht als Klassenmitglied existieren. Stattdessen kann es als lokale Variable innerhalb eines Funktionsbereichs deklariert werden, der das Objekt erstellt. Dieser Ansatz verhindert den Zugriff mit diesem Schlüsselwort und gewährleistet so echte Privatsphäre.

Das obige ist der detaillierte Inhalt vonWarum sind private Mitglieder in JavaScript zugänglich, wenn TypeScript verwendet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!