
오늘은 타입스크립트에서 타입을 정의하는 두 가지 키워드를 언제 어떻게 써야하는지 적어보려고 한다.
지금까지는 개발을 진행할 때 자바스크립트만을 사용하면서 타입스크립트에 대한 지식이 많이 부족한 상태라 두 가지의 키워드를 언제 쓰는게 좋은지 잘 구분이 되지 않았다.
그렇기에 잘 쓰기 위해서 찾아봤던 내용들을 소개하려고 한다.
인터페이스(interface)란 상호 간의 정의한 약속 혹은 규칙을 의미한다.
간단하게 인터페이스에 선언된 프로퍼티 또는 메소드의 구현을 강제하여 일관성을 유지하는 것이다.
interface UserProfile {
name: string;
age: number;
}
interface UserInfo extends UserProfile {
job: string
}
const userInfo: UserInfo = {
name: '김용민',
age: 24,
job: '개발자'
}
타입(type)이란 TypeScript에서 사용자 정의 타입을 생성하는데 사용된다.
type UserProfile {
name: string;
age: number;
}
type UserInfo = UserProfile & {
job: string
}
const userInfo: UserInfo = {
name: '김용민',
age: 24,
job: '개발자'
}
두 키워드 사용할 때는 네이밍 시작을 대문자로 해야한다.
이렇게 두 가지 키워드에 대해서 알아보았다.
클래스나 객체를 정의하고 싶다면 인터페이스를 사용하는 게 좋을 거 같고
그 외의 상황에서는 타입으로 정의 하는 것이 좋을 것 같다.