Напиши тип Senior Условные и mapped-типы обновлено
infer у функции
Вопрос
Напиши свой ReturnType через infer.
type MyReturnType<T> = /* ? */;
Попробуйте сами
Напишите тип, как написали бы в коде.
Показать ответ и разбор
Коротко
Правильный тип: T extends (...args: any[]) => infer R ? R : never. Ответ Почему так Дословно так ReturnType и определён в lib.es5.d.ts.
Правильный тип
T extends (...args: any[]) => infer R ? R : never
Разбор
Ответ
T extends (...args: any[]) => infer R ? R : never
Почему так
Дословно так ReturnType и определён в lib.es5.d.ts. Стоит уметь написать по памяти - спрашивают часто.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.