Напиши тип Middle Дженерики обновлено

Ограничение дженерика

Вопрос

Ограничь K ключами объекта T в сигнатуре get<T, K>(obj: T, key: K).

function get<T, /* ? */>(obj: T, key: K): T[K] { return obj[key]; }

Попробуйте сами

Напишите тип, как написали бы в коде.

Показать ответ и разбор

Коротко

Правильный тип: K extends keyof T. Ответ Почему так K extends keyof T - самый частый констрейнт на собеседовании.

Правильный тип

K extends keyof T

Разбор

Ответ

K extends keyof T

Почему так

K extends keyof T - самый частый констрейнт на собеседовании. Он же даёт точный тип результата T[K] вместо any.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме