Напиши тип Middle Дженерики обновлено
ReturnType у дженерик-функции
Вопрос
Какой тип получится? Впишите тип.
function id<T>(x: T) {
return x;
}
type R = ReturnType<typeof id>; // /* ? */
Попробуйте сами
Напишите тип, как написали бы в коде.
Показать ответ и разбор
Коротко
Правильный тип: unknown. typeof id это <T(x: T) = T.
Правильный тип
unknown
Разбор
typeof id это <T>(x: T) => T. Когда условный тип ReturnType применяется к дженерик-сигнатуре, параметр типа заменяется своим ограничением, а у T без ограничения это unknown. Для конкретного вызова используют instantiation expression (TS 4.7+): ReturnType<typeof id<string>> даёт string.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.