me_edu
TypeScript для начинающихШаг 24 из 27 · 0% пройдено
Дженерики · Дженерики

Дженерики в типах и на практике

Дженерики используют не только функции, но и интерфейсы с типами:

interface Box<T> { value: T; }

const numberBox: Box<number> = { value: 42 }; const textBox: Box<string> = { value: "привет" };

Вы уже встречали дженерики, не зная их имени: Array<T>, Promise<T> (промис, который вернёт T), а в React — useState<T>.

Можно ограничить, какие типы допустимы, через extends:

function len<T extends { length: number }>(x: T): number { return x.length; // у T точно есть length }

len("строка"); // 6 len([1, 2, 3]); // 3

Дженерики — это вершина базового TypeScript: они дают переиспользуемый и при этом строго типизированный код. На старте достаточно понимать идею; глубокое владение приходит с практикой.

Назад

Обсуждение

Войдите, чтобы участвовать в обсуждении.

Пока нет сообщений.