Енумерација како тип во 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"
Може да се заклучи дека ваков тип не се проверува многу строго и од тука неговата вредност е сомнителна.