JavaScript에서 _템플릿 문자열_을 사용하면 문자열 안에 표현식을 넣을 수 있어요. 문자열 보간이라고도 하죠.
이 기능은 내장 String 전역 객체의 기능을 확장한 거예요.
JavaScript에서는 텍스트를 백틱으로 감싸면 템플릿 문자열을 만들 수 있어요. 템플릿 문자열을 쓰면 텍스트에 줄 바꿈이나 다른 특수 문자를 넣을 수 있을 뿐만 아니라, 변수나 다른 표현식도 함께 넣을 수 있어요.
const num1 = 1;
const num2 = 2;
`Adding ${num1} and ${num2} gives ${num1 + num2}.`;
// => Adding 1 and 2 gives 3.
위 예시에서는 백틱(``)으로 템플릿 문자열을 나타내요. ${...}는 값을 대신 채워 넣는 플레이스홀더예요.
문자열이 아닌 타입은 암묵적으로 문자열로 변환돼요.
이 주제는 타입 변환 개념에서 다뤄요.
템플릿 문자열에는 모든 종류의 표현식을 사용할 수 있어요.
const track = 'JavaScript';
`This track on exercism.org is ${track.toUpperCase()}.`;
// => This track on exercism.org is JAVASCRIPT.
문자열을 여러 줄에 걸쳐 작성해야 할 때는 이렇게 해요:
`This is an example of using template
strings to accomplish multiple
lines`;
치환 기능을 활용하면 결과 문자열이 무엇이 되어야 할지 결정하는 로직을 넣을 수도 있어요.
이런 로직을 처리하는 방법 중 하나는 삼항 연산자를 사용하는 거예요.
삼항 연산자를 쓰면 if/else와 같은 조건부 기능을 조금 다른 형식으로 구현할 수 있어요.
템플릿 문자열 문법에 로직을 넣으려면 이렇게 해요:
const grade = 95;
`You have ${grade > 90 ? 'passed' : 'failed'} the exam.`;
// => You have passed the exam.