Enum в TypeScript — это тип данных, который позволяет нам определять набор именованных констант. Перечисления могут быть полезны, когда мы хотим определить фиксированный набор значений, которые можно использовать в приложении.
Итерация по перечислениям может быть немного сложной в TypeScript, но есть несколько способов сделать это. Вот несколько примеров:
Способ 1: Использование цикла for…in
Один из способов перебора Enum — использование цикла for…in. Этот цикл будет перебирать все свойства Enum, включая значения. Вот пример:
enum Colors {
Red,
Green,
Blue
}
for (let color in Colors) {
console.log(color); // "Red", "Green", "Blue"
console.log(Colors[color]); // 0, 1, 2
}
Способ 2: Использование Object.keys()
Другой способ перебора Enum — использование метода Object.keys(). Этот метод вернет массив всех ключей в Enum, который мы затем можем просмотреть. Вот пример:
enum Colors {
Red,
Green,
Blue
}
Object.keys(Colors).forEach((key) => {
console.log(key); // "Red", "Green", "Blue"
console.log(Colors[key]); // 0, 1, 2
});
Способ 3: Использование пользовательской функции
Наконец, мы также можем создать пользовательскую функцию, которая будет перебирать Enum и выполнять некоторые действия для каждого значения. Вот пример:
enum Colors {
Red,
Green,
Blue
}
function iterateEnum(e: any, callback: any) {
Object.keys(e).forEach((key) => callback(e[key]));
}
iterateEnum(Colors, (value) => {
console.log(value); // 0, 1, 2
});
Используя один из этих методов, мы можем легко перебирать перечисления в TypeScript и выполнять некоторые действия для каждого значения.