Что такое Generic в TS?
Дженерики
Generic в TypeScript — параметр типа, который подставляется при использовании функции, класса или типа.
function identity<T>(value: T): T {
return value;
}
identity<string>('a'); // T = string
identity(42); // T выведен как numberГде встречаются
- Функции:
function map<T, R>(items: T[], fn: (item: T) => R): R[]. - Интерфейсы и типы:
interface Box<T> { value: T }. - Классы:
class Stack<T> { push(item: T) {} }. - Встроенные типы:
Array<T>,Promise<T>,Map<K, V>.
Возможности
- ограничения:
T extends object; - значения по умолчанию:
<T = string>; - несколько параметров:
<K, V>.
Коротко для собеседования
Generic — «переменная для типа»: позволяет писать переиспользуемый код, который сохраняет конкретные типы данных.
Подробнее: TypeScript Handbook — Generics