⊗tsSpGnCls 34 of 37 menu

Általános osztályok a TypeScript-ben

A TypeScript-ben az általános interfészek mellett lehetőség van általános osztályok létrehozására is.

Hozzunk létre egy <User osztályt általános típusparaméterrel. Írjunk egy <value tulajdonságot is általános típusra, és készítsünk egy megfelelő konstruktort:

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

Most készítsünk egy objektumot ebből az osztályból és adjunk meg neki egy sztring értéket a tulajdonságában:

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

Azonban, ha már a létrehozáskor megadtunk az objektumnak egy sztring értéket, nem fogjuk tudni ezt az értéket egy másik típusra módosítani:

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

A kód futtatásakor a következő hibát fogjuk látni:

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

Ugyanakkor módosíthatjuk a sztring értéket:

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

Vegyük észre, hogy ugyanazon objektum tulajdonságát egy másik típusra nem változtathatjuk meg, de létrehozhatunk egy egyszerűen egy másik objektumot:

let newUser = new User(35); console.log(newUser.value); // 35
Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás