получить тип свойства объекта по ключу можно с помощью K extends keyof T ?
Пример онли ради примера:
function extractProperty<T, K extends keyof T>(
instance: T,
key: K,
): T[K] {
return instance[key];
}
Вроде бы не ругается и работает.
interface A { num: number; str: string; }
const a: A = {num: 1, str: "1"};
const num: number = extractProperty(a, "num");
Для получения типа свойства есть вариант проще: Type['property']
вроде все ок
Обсуждают сегодня