TGViewer
ТОП - Тёма о программировани ТОП - Тёма о программировани @temaprog · 2.81K subscribers
Post #50 3.58K
ТОП - Тёма о программировани Enums - зло? Или мы просто не поняли замысел творца? Вокруг enums в TS ходит большое кол-во споров. Кто-то их любит, кто-то ненавидит. Я был и в том, и в другом лагере. Давайте посмотрим на их плюсы и минусы(по моему мнению), чтобы вам было проще вывести…
Альтернативы

Для группы констант, когда типизация не нужна:

const BookGenre = {
horror: 'horror',
comedy: 'comedy'
} as const


Если нужны только типы - юнион литералов(обожаю их, максимум пользы и минимум лишнего):

type BookGenre = 'horror' | 'comedy' // как обычный тип уйдет на компиляции


Нужны и значения, и типы:

const BookGenre = {
horror: 'horror',
comedy: 'comedy'
} as const
type BookGenre = keyof typeof BookGenre

function logGenre(genre: BookGenre) {} // тип
logGenre(BookGenre.comedy) // значение
  • 🔥 44
  • 👍 12
More from @temaprog
  1. Sep 15, 2026Здарова, работяги! Кто собирается на Avito.Tech.Conf 26 сентября? Я уже рассказывал про ко…
  2. Sep 14, 2026Зачем ты пишешь? Здарова, работяги! Помню, как все только начинали активно использовать аг…
  3. Sep 4, 2026Здарова, работяги! Приезжает коробка. Внутри бейдж на Avito.Tech.Conf и часы «Ракета».😳 И…
  4. Sep 3, 2026Здарова, работяги! Потихоньку продолжаю дописывать посты из заметок. В прошлый раз — элеме…
  5. Aug 26, 2026Здарова, работяги! Совсем скоро осень, а значит, начинается сезон конференций. Про Avito.T…
  6. Aug 18, 2026Здарова, работяги! Сейчас я много думаю про AI-native команды и внедрение ИИ в разработку.…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →