Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу