템플릿 리터럴 타입

템플릿 리터럴 타입

특수한 문자열 타입

특히 문자열의 조합을 표현할 때 편리

  • 백틱(`)과 보간(${})을 사용하는 자바스크립트의 자바스크립트 템플릿 리터럴과 사용법이 비슷

    • 값 대신 타입을 만들기 위해 사용됨

  • 템플릿 리터럴 타입은 재귀 호출이 가능

type Literal = 'literal';
type Template = `template ${Literal}`; //"template literal"
// Template 타입을 사용하면 정해진 문자열만 변수에 대입할 수 있음
const str: Template = 'template literal';
  • 문자열 타입 안에 다른 타입을 변수처럼 넣을 수 있음

type Template = `template ${string}`;
let str: Template = 'template ';
str = 'template hello';
str = 'teamplte 123';
str = 'template';  // error -> template 문자열 뒤에 띄어쓰기가 없기 때문
  • 템플릿 리터럴 타입을 사용하면 문자열 변수를 엄격하게 관리 가능

  • 특히 문자열의 조합을 표현할 때 편리

infer 와 함께 사용하면 더 강력하다

  • 좌우 공백이 있는 문자열 타입에서 공백을 제거하는 작업

    • ' test ' -> 'test'

  • 좌우를 동시에 지우지 않는건 좌우 대칭인 경우에만 동작하기 때문

Last updated