더북(TheBook)

2.25 정교한 문자열 조작을 위해 템플릿 리터럴 타입을 사용하자

템플릿 리터럴 타입은 특수한 문자열 타입입니다. 백틱(backtick,``)과 보간(interpolation, ${})을 사용하는 자바스크립트의 템플릿 리터럴과 사용법이 비슷하지만, 값 대신 타입을 만들기 위해 사용합니다. 간단한 템플릿 리터럴 타입을 만들어보겠습니다.

type Literal = "literal";
type Template = `template ${Literal}`;
// type Template = "template literal"
const str: Template = 'template literal';

문자열 타입 안에 다른 타입을 변수처럼 넣을 수 있습니다. Template 타입을 사용하면 정해진 문자열만 변수에 대입할 수 있습니다. 조금 더 타입을 넓혀보겠습니다.

type Template = `template ${string}`;
let str: Template = 'template ';
str = 'template hello';
str = 'template 123';
// Type '"template"' is not assignable to type '`template ${string}`'.
str = 'template';
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.