Как переменная оказывается внутри строки

При интерполяции программа берёт шаблон текста, находит в нём специально обозначенное место и подставляет туда значение переменной. Например, в JavaScript строка `` `Привет, ${имя}!` `` превращается в «Привет, Анна!», если в переменной `имя` хранится слово «Анна». В других языках обозначения могут отличаться, но принцип тот же.

Подстановка происходит, когда программа вычисляет выражение. Если переменная меняется, при следующем вычислении шаблон может дать уже другой текст. Так удобно собирать обращения к пользователю, сообщения об ошибках и подписи с данными, которые заранее неизвестны.

Чем это удобнее сложения строк

Без интерполяции программисту пришлось бы соединять отдельные куски: текст до значения, само значение и текст после него. В длинном предложении такая запись быстро становится трудной для чтения: легко потерять пробел, кавычку или знак препинания. Шаблон сохраняет фразу почти в том виде, в каком её увидит человек, а переменные остаются заметными внутри неё.

Интерполяция обычно также преобразует подставляемое значение в текст — например, число `5` становится символом «5». Но подстановка сама по себе не проверяет, безопасен ли получившийся текст для дальнейшего использования. Если строку затем вставляют в веб-страницу или команду, нужны специальные средства обработки: иначе данные могут быть восприняты не как обычный текст, а как код. Поэтому интерполяция упрощает сборку строки, но не заменяет правила безопасной работы с ней.