> Что такое Record в TypeScript и как его использовать? (TypeScript)
Уровень: junior · Роль: frontend · Категория: Технические вопросы
Компании: TYMY
Стек: TypeScript
> Пример ответа
Record - это встроенный утилитарный тип в TypeScript, который позволяет создать объектный тип с заданными ключами и единым типом значений. Он особенно полезен, когда нужно описать словарь (map) или маппинг одних значений на другие.
Синтаксис: Record<K, T>, где K - тип ключей (обычно string, number или объединение литералов), а T - тип значений.
Пример использования:
TYPESCRIPTtype UserRoles = 'admin' | 'user' | 'guest';type UserPermissions = Record<UserRoles, string[]>;const permissions: UserPermissions = {admin: ['read', 'write', 'delete'],user: ['read', 'write'],guest: ['read'],};
Здесь Record гарантирует, что объект содержит все ключи из объединения UserRoles, и каждому ключу соответствует массив строк.
Record часто применяется для:
-
Создания конфигураций с фиксированным набором ключей.
-
Типизации ответов от API, где ключи динамические, но значения однотипны.
-
Упрощения работы с enum или константами.
Важно: если ключи могут отсутствовать, лучше использовать Partial<Record<K, T>> или Record<K, T | undefined>.
> Похожие задачи по frontend
Знакомы ли вы с Bootstrap
Что такое Pick в TypeScript и как его использовать?
Какие альтернативы использованию infer в TypeScript для типизации ключей?
Можно ли объединить несколько типов в один тип в TypeScript и как это сделать?
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью