Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗tsSpGnCls 34 of 37 menu
◀ ▶

Vispārinātie klases TypeScript

Papildus vispārinātajiem interfeisiem TypeScript var izveidot arī vispārinātas klases.

Izveidosim klasi User vispārinātā tipā. Uzrakstīsim arī īpašību value vispārinātā tipa un izveidosim atbilstošo konstruktoru:

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

Tagad izveidosim šīs klases objektu un ierakstīsim tam īpašībā virknes vērtību:

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

Tomēr, ja mēs jau esam iestatījuši objektam pie tā izsaukšanas virknes vērtību, mums neizdosies pārrakstīt šo vērtību citā tipā:

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

Mēģinot palaist kodu, mēs redzēsim šādu kļūdu:

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

Bet tajā pašā laikā mēs varam pārrakstīt virknes vērtību:

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

Ievērojiet, ka pārrakstīt īpašību no tā paša objekta citā tipā mēs nevaram, bet varam izveidot vienkārši citu objektu:

let newUser = new User(35); console.log(newUser.value); // 35
← →
↑
Latviešu▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt