Výčet jako typ v TypeScriptu
Každý výčet vytváří svůj vlastní
datový typ. Pro příklad přiřaďme
proměnné, která ukládá aktuální roční období,
typ Season:
let current: Season;
Zapišme do naší proměnné číslo ročního období:
let current: Season = Season.Winter;
console.log(current); // 0
Číslo ročního období lze zadat ručně:
let current: Season = 3;
Pokud bychom se však pokusili zapsat data jiného typu, například řetězec, dojde k chybě:
let current: Season = 'str'; // dojde k chybě
Bohužel se nesleduje rozsah hodnot a je možné zapsat číslo, které se v našem výčtu nenachází:
let current: Season = 7; // k chybě nedojde
Při kontrole pomocí operátoru typeof
vrátí naše proměnná číselný typ:
let current: Season = 3;
console.log(typeof current); // "number"
Shrnutím lze říci, že tento typ není kontrolován příliš přísně, a proto je jeho hodnota sporná.