250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 타입스크립트
- 파이썬 반복문
- 리액트 훅
- tanstack query
- 파이썬 for
- 리액트 공식문서
- 내배캠 프로젝트
- useState
- React Hooks
- 파이썬 replace
- 코딩테스트
- 내일배움캠프
- 파이썬 slice
- 한글 공부 사이트
- 내일배움캠프 최종 프로젝트
- 리액트
- typeScript
- REACT
- 리액트 프로젝트
- 프로그래머스
- 타입스크립트 props
- 파이썬 딕셔너리
- JavaScript
- 파이썬 for in
- useEffect
- 자바스크립트
- Next 팀 프로젝트
- 타입스크립트 리액트
- 내일배움캠프 프로젝트
- 파이썬 enumerate
Archives
- Today
- Total
sohyeon kim
[TS] interface VS type alias : 인터페이스와 타입 별칭의 차이점 본문
728x90
💡 인터페이스와 타입 별칭의 차이점을 알아보자.
확장성 : interface 는 확장이 가능하지만, type 은 그렇지 않다.
- 동일한 타입에 새로운 속성을 추가해야 하는 경우 인터페이스를 사용하자.
- 반대로 의도치 않은 확장을 막기 위해 type 을 사용하는 경우도 있다.
interface Hello{
name: string;
}
interface Hello{
age: number;
} // 이제 Hello 는 name 과 age 를 둘 다 포함
type Hello2{
name: stirng;
}
type Hello2{
age: number;
} // 불가능
복잡한 타입 표현 : type은 유니언 및 인터섹션 타입을 정의할 수 있지만, interface는 불가하다.
- 인터페이스는 주로 객체 형태의 타입을 정의하는데에 사용된다.
- 타입 별칭(type alias)는 객체 뿐 아니라, 유니온, 튜플, 매핑된 타입 등 복잡한 타입 표현에 유리하다.
type A = B | C
구현 가능성 : interface는 클래스를 통해 구현될 수 있지만, type은 불가하다.
➡️ 주로 객체의 형태를 정의하고 확장 가능성을 염두에 둔다면 인터페이스를 사용하고,
복잡한 타입 표현이나 유니온 타입이 필요하다면 타입 별칭을 사용하자.
728x90
반응형