Что такое перечисления?

Перечисления, сокращение от перечислений, — это функция TypeScript, которая позволяет пользователям определять набор именованных констант. Эти константы могут представлять конкретное значение или набор связанных значений. Перечисления — это мощный инструмент, который можно использовать для улучшения организации кода, его удобочитаемости и удобства сопровождения.

Примером перечисления может быть код состояния приложения. Вместо использования магических чисел или случайных строк для представления состояния мы можем использовать перечисление, которое четко определяет параметры:

enum Status {
  Pending = "PENDING",
  Approved = "APPROVED",
  Rejected = "REJECTED"
}

const handleStatus = (currentStatus: Status) => {
  switch(currentStatus) {
    case Status.Pending:
      console.log("The status is Pending");
      break;
    case Status.Approved:
      console.log("The status is Approved");
      break;
    case Status.Rejected:
      console.log("The status is Rejected");
      break;
   }
}

handleStatus(Status.Approved);

В этом фрагменте мы создали перечисление Status с тремя элементами Pending, Approved и Rejected. Каждому члену присваивается строковое значение. Это позволяет нам использовать эти члены как константы во всем нашем коде, в нашем примере как currentStatusin параметр функции handleStatus. По сравнению с просто использованием строкового типа для currentStatus сразу становится ясно, что именно вы можете ожидать.

Перечисления также полезны при работе с фиксированным набором параметров, например списком дней в неделе или набором цветов. Они обеспечивают типобезопасный способ работы с этими параметрами и помогают предотвратить проблемы, используя неправильное значение.

Зачем использовать перечисления?

1. Расширенная читабельность кода. Перечисления дают четкий и лаконичный способ представления фиксированного набора параметров. Вместо использования магических чисел или случайных строк перечисления позволяют вам использовать осмысленные имена для параметров. Это делает код более читабельным и понятным.

2. Безопасность типов.Перечисления — это типобезопасный способ работы с фиксированным набором параметров. Они предотвращают ошибки, вызванные использованием неправильного значения, и помогают гарантировать, что в коде используются только допустимые параметры.

3. Улучшенная организация кода:перечисления можно использовать для группировки связанных параметров, что делает код более организованным и удобным для навигации. Это помогает поддерживать кодовую базу в чистоте и сопровождении.

4. Упрощение рефакторинга.Перечисления упрощают рефакторинг кода, поскольку имена значений перечислений можно изменить, не затрагивая остальную часть кодовой базы.