개발이야기
[TIL]16.타입스크립트 타입선언, 인터페이스
무서운승태
2023. 11. 2. 19:44
728x90
오늘은 타입스크립트 강의를 보았다. 나중에 캠프 일정에 타입스크립트에 관한 일정이 있었지만 조금 파리게 배워보고 싶어서 진도를 나갔다. 타입스크립트를 배우면서 기존 자바스크립트와 무엇이 다른가 비교하면서 공부하니 재미있게 보았던 것 같다.
타입 선언
타입스크립트에서는 타입을 개발자가 정의 할수 있다.
// NewStringType이라는 새로운 타입을 정의해보았다.
type NewStringType = string;
const stringVar1: NewStringType = "안녕하세요";
이런 식으로 사용하면 굳이 왜 다시 선언해서 사용해야 하는지 이해가 안 갈 수도 있다. 나중에 배울 Union과 조합하면 더욱 강력해진다.
객체 타입도 정의할수있다.
type IdolType = {
groupName: string,
year: number
}
const idolGroup: IdolType = {
groupName : "빅뱅",
year : 100
}
인터페이스
- 타입선언처럼 타입으로 사용할 수 있다. => 타입과 인터페이스의 기능은 비슷한 부분이 많다.
- 타입이 하지 못하는 일 때문에 인터페이스가 나왔다.
- 객체 형태로 선언한다.
- 인터페이스에 선언된 프로퍼티는 필수로 들어가야 한다.
interface IdolInterface {
name: string;
year: number;
}
const yujin: IdolInterface = {
name : "안유진",
year : 20
}
옵셔널
- 단어의 의미처럼 선택적으로 값을 넣을 수 있다.
- 값이 있을 수도 없을 수도 있다.
// ?로 선언한다.
interface IdolOptional {
name : string;
age?: number;
}
// age값은 옵셔널로 선언하였기때문에 필수값이 아니게 된다.
const yujin2: IdolOptional = {
name : "안유진"
}