Встречается на собеседованиях • сегодня
В чем разница между Literal Types и Enum в TypeScript
Literal Types позволяют указывать конкретные значения (строки, числа, булевы) как тип. Они полезны для ограничения возможных значений переменной:
typescript
type Direction = 'left' | 'right' | 'up' | 'down';
const move: Direction = 'left'; // OK
const move: Direction = 'diagonal'; // ErrorEnum создает именованную группу констант, которая может быть числовой или строковой:
typescript
enum Direction {
Left = 'LEFT',
Right = 'RIGHT'
}
const dir: Direction = Direction.Left;Ключевые различия:
- Literal Types - только типы, Enum - реальные значения в runtime
- Enum можно использовать как объект (Direction.Left), Literal Types - нет
- Enum поддерживает reverse mapping для числовых значений
- Literal Types проще в использовании и не генерируют лишний код
Выбор зависит от потребностей: если нужны только типы - Literal Types, если нужны реальные значения - Enum.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы