Enum - це спеціальний тип у TypeScript, який використовується для представлення групи констант. Enum буває числовим або текстовим. Якщо enum явно не ініціалізувати, перше значення буде рівне 0, наступне 1, і так далі.
В TypeScript enum можна використовувати як тип, що змусить розробника використовувати лише значення з цього enum.
Ось такий вигляд має enum після компіляції TypeScript:
// TypeScript
enum Color {
Red,
Green,
Blue
}
// JavaScript
var Color;
(function (Color) {
Color[Color["Red"] = 0] = "Red";
Color[Color["Green"] = 1] = "Green";
Color[Color["Blue"] = 2] = "Blue";
})(Color || (Color = {}));
Як ви можете помітити, насправді enum індексується за ключами і за значеннями.
👉 Відкрити документацію
А як ви обираєте між enum та текстовими літералами (
"red" | "green")?#interview