• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

질문있습ㄴ디ㅏ ~!

21.04.26 14:13 작성 조회수 109

0

안녕하세요 강사님.

Unpacked<T> = T extends (infer U)[] 에서

U는 어디서 오는건가요 ?

type T0 = Unpacked<string[]>; 이렇게 되어있으면

T가 string[]이고 U는 string인건가요 ?

infer를 적어주면 알아서 판단해주는 역할을 하는건가요 ?

StringPropertyNames<T> ={}[keyof T];

여기 뒤에 오는 [keyof T] 이것은 모든 곳에서 뒤에 저렇게 붙여주면 해당 타입으로 가져올 수 있는건가요 ?

답변 1

답변을 작성해보세요.

0

infer를 적어주면 알아서 판단해주는 역할을 하는건가요 ? => 네 맞습니다

keyof 는 모든 속성 이름을 문자열 유니온 타입으로 만들어주는 역할을 합니다
예를 들어, 아래 Props 타입은 `'name' | 'age'`와 같습니다

interface Student {
  name: string;
  age: number;
}
type Props = keyof Student;