본문 바로가기
coding/typescript

[TypeScript] 타입과 인터페이스

by 코딩희송 2021. 3. 21.

Differences Between Type Aliases and Interfaces

 

인터페이스의 거의 모든 기능은 유형에서 사용할 수 있습니다.

 

interface Animal {
  name: string
}

interface Bear extends Animal {
  honey: boolean
}

const bear = getBear() 
bear.name
bear.honey
type Animal = {
  name: string
}

type Bear = Animal & { 
  honey: Boolean 
}

const bear = getBear();
bear.name;
bear.honey;
        

 

비슷하지만, 주요 차이점은 항상 확장 가능한 인터페이스와 비교하여 새 속성을 추가하기 위해 유형을 다시 열 수 없다는 것입니다.

 

interface Window {
  title: string
}

interface Window {
  ts: TypeScriptAPI
}

const src = 'const a = "Hello World"';
window.ts.transpileModule(src, {});
type Window = {
  title: string
}

type Window = {
  ts: TypeScriptAPI
}

 // Error: Duplicate identifier 'Window'.

 

'coding > typescript' 카테고리의 다른 글

[TypeScript] 기초와 유니온  (0) 2021.03.21
[TypeScript] .tsconfig 보일러 플레이트 제공  (0) 2021.03.21

댓글