Перейти к основному содержимомуКак устроены дженерики (обобщённые типы) в TypeScript и зачем они нужны?
СобеседованиеДженерики
- Дженерики параметризуют типы/функции/классы:
function id<T>(x: T): T
- Позволяют создавать переиспользуемый типобезопасный код
- Когда использовать: связь входных и выходных типов, типизация коллекций
- Когда НЕ использовать: если параметр используется один раз → используйте
unknown
- Ограничения:
T extends U задаёт верхнюю грань
- Значения по умолчанию:
interface Container<T = string> {}
- Дефолты должны следовать после обязательных параметров
- Вывод типа имеет приоритет над дефолтом