프론트엔드 개발 · 기초
'type' 별칭(Type Alias)은 무엇이며, 'interface'와 비교했을 때 어떤 상황에서 'type' 별칭을 사용하는 것이 더 적합한가요?
힌트 · 'type' 별칭은 기본 타입, 유니온/인터섹션 타입, 튜플 등 다양한 타입 조합을 정의할 수 있어 더 유연합니다.
유니온 타입튜플원시 타입타입 연산선언 병합
모범답안
'type' 별칭은 TypeScript에서 기존 타입에 새로운 이름을 부여하는 기능입니다. 마치 변수처럼 타입을 참조할 수 있게 해주는 것이죠.
'interface'와 비교했을 때, 'type' 별칭은 좀 더 광범위하게 사용될 수 있습니다. 특히 유니온 타입이나 튜플 타입을 정의할 때 유용합니다. 예를 들어, type Result = Success | Failure처럼 여러 타입 중 하나를 나타내거나, type Point = [number, number]처럼 튜플을 정의할 때 'type' 별칭이 더 적합합니다.
또한, 원시 타입에 별칭을 부여하거나, 타입 연산을 수행할 때도 'type' 별칭을 사용합니다. 반면 'interface'는 주로 객체 타입을 정의하고 선언 병합을 지원한다는 특징이 있습니다. 따라서 객체 구조를 정의하고 확장해야 할 때는 'interface'를, 그 외 다양한 타입 조합이나 연산이 필요할 때는 'type' 별칭을 선택하는 것이 좋습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 TypeScript 면접 질문
- TypeScript에서 변수에 타입을 명시하는 '타입 주석(Type Annotation)'은 무엇이며, 언제 주로 사용하나요?
- TypeScript의 기본 타입(Basic Types) 중 'string', 'number', 'boolean' 외에 'any'와 'unknown' 타입은 각각 어떤 용도로 사용되며, 둘의 차이점은 무엇인가요?
- TypeScript의 'interface'는 무엇이며, 객체의 형태를 정의할 때 어떻게 활용할 수 있는지 간단한 예시와 함께 설명해주세요.
- TypeScript에서 함수에 타입을 정의하는 방법은 무엇이며, 매개변수와 반환 값에 타입을 명시하는 이유를 설명해주세요.
- 'enum' 타입은 무엇이며, TypeScript에서 'enum'을 사용하는 주된 목적과 간단한 예시를 들어 설명해주세요.
- TypeScript에서 여러 타입 중 특정 타입의 값을 안전하게 처리하기 위해 사용하는 타입 가드(Type Guards)의 종류와 각각의 사용 사례를 설명해 주세요.