TypeScriptда enumeration тип сифати
Ҳар бир enumeration ўзининг махсус
маълумот турини яратади. Келгила, мисол учун,
ҳозирги фаслни сақловчи ўзгарувчига
Season турини белгилаймиз:
let current: Season;
Ўзгарувчимизга фасл рақамини ёзамиз:
let current: Season = Season.Winter;
console.log(current); // 0
Фасл рақамини қўлда кўрсатиш мумкин:
let current: Season = 3;
Аммо бошқа турдаги маълумотларни, масалан, сатрни ёзгалинитса, хатолик юз беради:
let current: Season = 'str'; // хатолик булади
Афсуски, қийматлар диапозони кузатилмайди ва бизнинг enumerationда мавжуд бўлмаган рақамни ёзиш мумкин:
let current: Season = 7; // хатолик булмайди
typeof оператори орқали текширилганда
бизнинг ўзгарувчи рақамли турни қайтаради:
let current: Season = 3;
console.log(typeof current); // "number"
Хулоса қилиш мумкинки, бундай тур жудда қаттиқ текширилмайди ва шу сабабдан унинг қиймати шубхалидир.