Пералічэнне як тып у TypeScript
Кожнае пералічэнне стварае свой уласны
тып даных. Давайце для прыкладу для
зменнай, якая захоўвае бягучы сезон прысвоім
тып Season:
let current: Season;
Запішам у нашу зменную нумар сезона:
let current: Season = Season.Winter;
console.log(current); // 0
Можна паказаць нумар сезона ўручную:
let current: Season = 3;
А вось калі паспрабаваць запісаць даныя іншага тыпу, напрыклад, радок, то будзе памылка:
let current: Season = 'str'; // будзе памылка
На жаль, дыяпазон значэнняў не адсочваецца і можна запісаць нумар, які адсутнічае ў нашым пералічэнні:
let current: Season = 7; // памылкі не будзе
Пры праверцы праз аператар typeof
наша зменная аддасць лікавы тып:
let current: Season = 3;
console.log(typeof current); // "number"
Падвядучы вынік можна сказаць, што такі тып правяраецца не вельмі строга і ад гэтага яго каштоўнасць сумнеўная.