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

Результат T[K]

Вопрос

Какой тип вернёт вызов? Впишите тип.

function get<T, K extends keyof T>(obj: T, key: K): T[K] {
  return obj[key];
}
const tags = get({ id: 1, tags: ['a', 'b'] }, 'tags'); // tags: /* ? */

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

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

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

Коротко

Правильный тип: string[]. T выводится как { id: number; tags: string[] }, K как литерал 'tags'.

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

string[]

Разбор

T выводится как { id: number; tags: string[] }, K как литерал 'tags'. Индексный доступ T['tags'] даёт тип поля: string[].

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

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

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