⊗tsSpGnCls 34 of 37 menu

Generiske klasser i TypeScript

Udover generiske grænseflader i TypeScript kan man også lave generiske klasser.

Lad os oprette en klasse User af generisk type. Lad os også skrive en egenskab value af generisk type og lave en passende konstruktør:

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

Lad os nu lave et objekt af denne klasse og tildele det en strengværdi i egenskaben:

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

Men hvis vi allerede har givet objektet en strengværdi ved dets opkald, vil det ikke være muligt at overskrive denne værdi til en anden type:

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

Ved forsøg på at køre koden vil vi se følgende fejl:

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

Men på samme tid kan vi overskrive strengværdien:

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

Bemærk, at vi ikke kan overskrive egenskaben for det samme objekt til en anden type, men vi kan blot oprette et andet objekt:

let newUser = new User(35); console.log(newUser.value); // 35
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικά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
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis