Строковые литералы шаблонов — это полезная функция JavaScript, позволяющая разработчикам встраивать выражения в строковые литералы. В этой статье блога мы рассмотрим синтаксис и возможности строковых литералов шаблонов в JavaScript.

Синтаксис

Строковые литералы шаблонов заключаются в обратные кавычки (‘), а не в одинарные или двойные кавычки. Синтаксис ${} используется для встраивания выражения в строку, как показано в следующем примере:

const name = 'John';
const message = `Hello, ${name}!`;
console.log(message); // Output: Hello, John!

В этом примере мы определяем переменную с именем name и переменную с именем message. Используя синтаксис ${}, переменной сообщения присваивается строковый литерал с внедренной в него переменной имени. Мы видим результирующую строку “Hello, John!”, когда записываем переменную сообщения в консоль.

Многострочные строки

Строковые литералы шаблонов также позволяют создавать многострочные строки без использования конкатенации или escape-символов. Рассмотрим следующий сценарий:

const message = `This is a 
                multiline string 
                using string template literals`;
console.log(message);

В этом примере мы определяем переменную с именем message и присваиваем ей многострочную строку, используя строковые литералы шаблона. Результатом будет:

This is a
multiline string
using string template literals

Интерполяция

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

const price = 10;
const quantity = 3;
const message = `The total cost is ${price * quantity} dollars`;
console.log(message); // Output: The total cost is 30 dollars

Строковые литералы шаблонов в JavaScript предоставляют мощный и удобный способ работы со строками. Они обеспечивают встраивание простых выражений в строки, многострочные строки и интерполяцию сложных строк. Разработчики могут использовать эту функцию для написания более читаемого, удобного в сопровождении и динамичного кода.