Перечисления
Узнайте, как использовать перечисления для большей понятности кода
«Перечисления» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения TypeScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс TypeScript Academy содержит 4 уроков всего.
Перечисления
Перечисления
Добро пожаловать на следующий урок! На этом уроке Вы узнаете о перечислениях в TypeScript. Перечисления позволяют определить набор именованных констант, благодаря чему код становится понятнее и удобнее в управлении. Давайте разберёмся!

Что такое перечисления?
Что такое перечисления?
Перечисление — это тип данных, который позволяет определить набор именованных констант. Перечисления используются для объединения связанных значений, благодаря чему код становится более организованным и менее подверженным ошибкам.
Пример: дни недели можно представить с помощью перечисления Days:
Задание: создайте перечисление для месяцев года и выведите в консоль несколько значений.
enum Days {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday,
}
console.log(Days.Monday); // Output: 0
console.log(Days.Friday); // Output: 4
Числовые перечисления
Числовые перечисления
Перечисления в TypeScript по умолчанию являются числовыми и начинаются с 0. При необходимости членам перечисления можно назначить собственные значения:
Задание: определите перечисление для ролей пользователей, например «Администратор», «Редактор» и «Наблюдатель», с собственными числовыми значениями.
enum Status {
Active = 1,
Inactive = 2,
Pending = 3,
}
console.log(Status.Active); // Output: 1
console.log(Status.Pending); // Output: 3
Обратное отображение
Обратное отображение
Перечисления TypeScript поддерживают обратное отображение, позволяющее получить имя члена перечисления по его значению:
Задание: поэкспериментируйте с обратным отображением, используя собственное перечисление.
enum Colors {
Red = 1,
Green,
Blue,
}
console.log(Colors[1]); // Output: "Red"
console.log(Colors[2]); // Output: "Green"
Строковые перечисления
Строковые перечисления
TypeScript также поддерживает строковые перечисления, в которых каждому члену перечисления присваивается строковое значение:
Задание: создайте строковое перечисление для основных цветов, например «Красный», «Зелёный» и «Синий».
enum Directions {
Up = "UP",
Down = "DOWN",
Left = "LEFT",
Right = "RIGHT",
}
console.log(Directions.Up); // Output: "UP"
console.log(Directions.Left); // Output: "LEFT"
Разнородные перечисления
Разнородные перечисления
Перечисление может содержать как числовые, так и строковые значения, но обычно такой подход не рекомендуется ради единообразия:
Задание: определите смешанное перечисление и изучите его поведение в редакторе.
enum Mixed {
Yes = 1,
No = "NO",
}
console.log(Mixed.Yes); // Output: 1
console.log(Mixed.No); // Output: "NO"
Использование перечислений в функциях
Использование перечислений в функциях
Перечисления отлично подходят для управления ходом выполнения кода. Пример:
Задание: напишите функцию, которая принимает перечисление в качестве параметра и возвращает сообщение.
enum Status {
Active,
Inactive,
Pending,
}
function checkStatus(status: Status): string {
switch (status) {
case Status.Active:
return "The status is active.";
case Status.Inactive:
return "The status is inactive.";
case Status.Pending:
return "The status is pending.";
default:
return "Unknown status.";
}
}
console.log(checkStatus(Status.Active)); // Output: "The status is active."
Распространённые ошибки
Распространённые ошибки
Вот несколько распространённых ошибок при использовании перечислений:
- Использование числовых перечислений, когда строковые сделали бы код понятнее.
- Смешивание числовых и строковых значений в одном перечислении.
- Неиспользование перечислений для значений, которым могли бы быть полезны именованные константы.
Совет: выбирайте подходящий тип перечисления — числовой или строковый — в зависимости от конкретной задачи.
enum Fruits {
Apple = 1,
Banana,
Cherry,
}
console.log(Fruits.Banana);
Отличная работа!
Отличная работа!
Поздравляем! Вы научились использовать перечисления в TypeScript для определения именованных констант. Перечисления — мощный способ сделать код понятнее и менее подверженным ошибкам. На следующем уроке мы рассмотрим литеральные типы — ещё одну расширенную возможность TypeScript. Продолжайте программировать!

Часто задаваемые вопросы
Урок «Перечисления» бесплатный?
Да — полный текст урока «Перечисления» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс TypeScript Academy, подпишись на CoddyKit PRO. Курс TypeScript Academy содержит 4 уроков всего.
Чему я научусь в уроке «Перечисления»?
Узнайте, как использовать перечисления для большей понятности кода Ты практикуешь TypeScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать TypeScript Academy?
Предыдущий опыт не требуется. TypeScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Перечисления»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке TypeScript Academy?
Да. Каждый урок TypeScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.