TypeScriptда enumeration тип сифати

Ҳар бир enumeration ўзининг махсус маълумот турини яратади. Келгила, мисол учун, ҳозирги фаслни сақловчи ўзгарувчига Season турини белгилаймиз:

typescriptlet current: Season;

Ўзгарувчимизга фасл рақамини ёзамиз:

typescriptlet current: Season = Season.Winter;
console.log(current); // 0

Фасл рақамини қўлда кўрсатиш мумкин:

typescriptlet current: Season = 3;

Аммо бошқа турдаги маълумотларни, масалан, сатрни ёзгалинитса, хатолик юз беради:

typescriptlet current: Season = 'str'; // хатолик булади

Афсуски, қийматлар диапозони кузатилмайди ва бизнинг enumerationда мавжуд бўлмаган рақамни ёзиш мумкин:

typescriptlet current: Season = 7; // хатолик булмайди

typeof оператори орқали текширилганда бизнинг ўзгарувчи рақамли турни қайтаради:

typescriptlet current: Season = 3;
console.log(typeof current); // "number"

Хулоса қилиш мумкинки, бундай тур жудда қаттиқ текширилмайди ва шу сабабдан унинг қиймати шубхалидир.