Išvardijimas kaip tipas TypeScript'e
Kiekvienas išvardijimas sukuria savo paties
duomenų tipą. Pavyzdžiui, kintamajam,
kuris saugo dabartinį metų laiką, priskirkime
tipą Season:
let current: Season;
Įrašykime į mūsų kintamąjį metų laiko numerį:
let current: Season = Season.Winter;
console.log(current); // 0
Metų laiko numerį galima nurodyti rankiniu būdu:
let current: Season = 3;
O jei bandysime įrašyti kito tipo duomenis, pavyzdžiui, eilutę, tai bus klaida:
let current: Season = 'str'; // bus klaida
Deja, verčių diapazonas nėra stebimas ir galima įrašyti numerį, kurio nėra mūsų išvardijime:
let current: Season = 7; // klaidos nebus
Tikrinant naudojant operatorių typeof
mūsų kintamasis grąžins skaitinį tipą:
let current: Season = 3;
console.log(typeof current); // "number"
Apibendrinant galima pasakyti, kad toks tipas tikrinamas ne itin griežtai, todėl jo vertė yra abejotina.