키로 값을 꺼내는 유틸을 만들었는데 호출부 타입이 unknown입니다.
function get<T, K extends keyof T>(obj: T, key: K) { return obj[key] }
const user = { id: 1, name: 'kim' }
const n = get(user, 'name') // 기대: string, 실제: 잘 됨
// 그런데 이건 무너짐
function pick<T>(obj: T, keys: string[]) { /* ... */ }
const picked = pick(user, ['name']) // unknown
두 번째처럼 동적인 경우 타입을 어떻게 살리나요?
댓글 0