개발이야기

[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 : "안유진"
}

 

 

'개발이야기' 카테고리의 다른 글

[TIL]18.env란  (0) 2023.11.06
[TIL]17.코딩테스트 스터디  (1) 2023.11.03
[TIL]15.개발자 커뮤니티 사이트  (0) 2023.11.01
[TIL]14.자바스크립트 모듈  (0) 2023.10.31
[TIL]13.자바스크립트 Promise와 async & await  (1) 2023.10.30