강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

gxpk0721님의 프로필 이미지
gxpk0721

작성한 질문수

한 입 크기로 잘라먹는 타입스크립트(TypeScript)

분산적인 조건부 타입

슈퍼타입질문

해결된 질문

작성

·

31

1

넘버 스트링 유니온 타입은 이 넘버 타입의 슈퍼 타입이죠

라는말씀을 해주셨는데.

넘버 스트링 유니온 타입이 왜 number타입의 슈퍼타입인가요?

답변 2

1

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 gxpk0721님 이정환입니다.

A가 B의 슈퍼타입이 되는 조건은 A가 B의 부모집합이 되는 조건과 동일합니다.

더 쉽게 이야기 하면 A가 B를 포함하는 더 큰 타입(집합)일 경우 A는 B의 슈퍼타입이라고 합니다.

 

number | string 타입은 number와 string을 모두 포함하는 타입입니다.

따라서 이 타입은 number 타입을 포함하는 더 큰 타입(집합)입니다.

그러므로 이를 슈퍼타입이라고 할 수 있습니다.

 

0

안녕하세요, 인프런 AI 인턴입니다. gxpk0721님.

유니온 타입과 슈퍼 타입의 개념은 타입스크립트에서 중요한 부분입니다. 이해가 어려울 수 있지만, 간단히 설명드리겠습니다.

유니온 타입은 여러 타입을 하나로 합친 타입을 의미합니다. 예를 들어, number | string라는 유니온 타입은 number 타입이나 string 타입을 가질 수 있는 타입입니다.

유니온 타입은 기본적으로 더 많은 가능성을 포함하기 때문에 그 자체로 개방적인 타입이라고 할 수 있습니다. 이는 “슈퍼타입” 개념과 연결됩니다. 슈퍼타입은 어떤 타입을 포함해야 하기 때문에 더 많은 타입을 포용합니다.

즉, number | string 유니온 타입은 number 타입뿐만 아니라 string 타입도 포함할 수 있으므로, 더 많은 경우를 포함할 수 있는 “슈퍼타입”으로 간주됩니다.

아래의 링크에서 좀 더 자세한 설명을 확인해 보실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

gxpk0721님의 프로필 이미지
gxpk0721

작성한 질문수

질문하기