⊗tsSpGnCls 34 of 37 menu

Generische Klassen in TypeScript

Neben generischen Schnittstellen in TypeScript kann man auch generische Klassen erstellen.

Lassen Sie uns eine Klasse User eines generischen Typs erstellen. Schreiben wir außerdem eine Eigenschaft value des generischen Typs und erstellen wir den entsprechenden Konstruktor:

class User <T> { value: T; constructor(userData: T) { this.value = userData; } }

Erstellen wir nun ein Objekt dieser Klasse und weisen wir ihm einen Zeichenkettenwert als Eigenschaft zu:

let user = new User('john'); console.log(user.value); // 'john'

Wenn wir dem Objekt bei seinem Aufruf jedoch bereits einen Zeichenkettenwert zugewiesen haben, können wir diesen Wert nicht in einen anderen Typ umschreiben:

let user = new User('john'); user.value = 35;

Beim Versuch, den Code auszuführen, werden wir den folgenden Fehler sehen:

Type 'number' is not assignable to type 'string'.

Gleichzeitig können wir den Zeichenkettenwert aber überschreiben:

let user = new User('john'); user.value = 'alex'; console.log(user.value); // 'alex'

Beachten Sie, dass wir die Eigenschaft desselben Objekts nicht in einen anderen Typ umwandeln können, aber wir können einfach ein anderes Objekt erstellen:

let newUser = new User(35); console.log(newUser.value); // 35
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen