Enum mint típus a TypeScript-ben
Minden enum létrehoz egy saját
adattípust. Példaként a
jelenlegi évszakot tároló változóhoz rendeljük hozzá
a Season típust:
let current: Season;
Írjuk be a változónkba az évszak számát:
let current: Season = Season.Winter;
console.log(current); // 0
Az évszak számát manuálisan is megadhatjuk:
let current: Season = 3;
Ha azonban más típusú adatot próbálunk beírni, például egy stringet, akkor hibaüzenetet kapunk:
let current: Season = 'str'; // hibaüzenetet fog adni
Sajnos az értéktartományt nem követi nyomon a rendszer, és olyan számot is beírhatunk, amely nincs benne a felsorolásunkban:
let current: Season = 7; // nem ad hibát
A typeof operátorral történő ellenőrzéskor
a változónk szám típust ad vissza:
let current: Season = 3;
console.log(typeof current); // "number"
Összefoglalva elmondhatjuk, hogy ez a típus nagyon szigorúan nem ellenőrzött, és emiatt az értéke kétséges.