본문 바로가기

Front-end/Typescript

Typescript Core

기본 문법


1. 타입 주석 / 타입 추론

let n: number = 1  // type annotation
let m = 2          // type interface

2. interface

// 'Person'이라는 인터페이스를 생성. 
// Person은 name은 반드시 정의되어야 하며, 
// age는 optional(?)로 age를 가질 수 있지만 null, undefined가 허용된다. 
interface Person {
	name: string	// 반드시 정의되어야 한다.
    age?: number	// optional
}

// 'person'이라는 변수는 인터페이스에 의해 'Person'타입이다. name을 반드시 정의해야한다.
let person: Person = {name: "Jane"}

3. tuple

// array (저장되는 데이터 타입이 모두 같다.)
let numberArray: number[] = [1, 2, 3]
			
// tuple (저장되는 데이터 타입이 2가지 이상이다.)
let tuple: [boolean, number, string] = [true, 1, 'OK']	

4. generic

class Container<T> {
	constructor(public value: T) { }
}
let numberContainer: Container<number> = new Container<number>(1)
let stringContainer: Container<string> = new Container<string>('Hello world')
let arrayContainer: Container<number[]> = new Container<number[]>(1, 2, 3)
let booleanContainer: Container<boolean> = new Container<boolean>(true)

5. 대수 타입

합집합

  • union(=sum type) => '|' (OR 기호)
  • type NumberOrString = number | string // 합집합. number or string

교집합

  • intersection(=product type) => '&' (AND 기호)
  • type AnimalAndPerson = Animal & Person // 합집합. animal and person

'Front-end > Typescript' 카테고리의 다른 글

type vs interface  (0) 2022.11.23
Enum  (0) 2022.11.23