2. TS

김근호·2021년 9월 8일
0

TS

목록 보기
2/3

TS 고유 문법

  1. 타입 주석과 타입 추론
  2. 인터페이스
  3. 튜플
  4. 제네릭 타입
  5. 대수 타입

1. 타입 주석 / 추론

// 1. 타입 주석 (n이 number라는 명시)
let n:  number = 1

// 2. 타입 추론 (m의 타입을 생략)
let m = 2

2번처럼 타입 부분을 생략할 수도 있음. 자바스크립트 소스코드와의 호환성을 보장하는 데에 도움을 줌. .js 파일을 .ts로 변환하기만 하면 타입스크립트 환경에서도 동작한다.

2. 인터페이스


interface Person {
  name: string
  age?: number
}
  
  let person: Person = { name: "Jane" }
  

추상화 인터페이스 고유 기능 존재

3. 튜플

tuple은 물리적으로 array와 같지만, elements의 데이터 타입이 모두 같으면 array, 다르면 tuple


// Array
let numberArray: number [] = [1, 2, 3]

// Tuple
let tuple: [boolean, number, string] = [true, 1, 'apple']

4. 제네릭 타입

class Container<T> {
  constructor(public value: T) {
  }
}

let numberContainer: Container<number> = new Container<number>(1)

let stringContainer: Container<string> = new Container<string>("nah")

여러 가지 타입을 한 번에 취급할 수 있도록 함

5. 대수 타입

ADT = Abstract / Algebraic Data Type(V)

다른 자료형의 값을 가지는 자료형.

type NumberOrString = number | string
type AnimalAndPerson = Animal & Person
profile
devrmsrms

0개의 댓글