⊗tsSpGnCls 34 of 37 menu

TypeScript'теги жалпы класс

TypeScript'теги жалпы интерфейстерден тышкары, жалпы класстарды да жасаса болот.

Келгиле, User жалпы тибиндеги классты түзөлү. value жалпы тибиндеги касиетти да жазып, тиешелүү конструкторду жасайлы:

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

Эми ушул класстын объектисин жасап, анын касиетине сап маанисин жазалы:

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

Бирок, эгерде биз объектке аны чакыруу учурунда эле сап маанисин берсек, бул маанини башка типке кайра жазуу мүмкүн болбойт:

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

Кодду иштетүүгө аракет кылганда, төмөнкү катаны көрөбүз:

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

Бирок ошол эле учурда, биз сап маанисин кайра жаза алабыз:

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

Эскертип койолу, ошол эле объекттин касиетин башка типке кайра жазса болбойт, бирок биз жөнөкөй эле башка объектти түзө алабыз:

let newUser = new User(35); console.log(newUser.value); // 35
Кыргызча
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу