Литералы шаблонов — это новая функция, представленная в ES6, которая упрощает создание строк с динамическими значениями и выражениями. В этом чтении мы собираемся объяснить, как работают литералы шаблонов.

Что такое шаблонные литералы?

Литералы шаблонов — это альтернативный способ работы со строками, который был представлен в дополнении ES6 к языку JavaScript. Единственным способом создания строк в JavaScript до ES6 было разделение их одинарными или двойными кавычками:

'Hello, World!'
"Hello, World!"

Наряду с предыдущими способами построения строк, в ES6 в качестве разделителей используются символы обратной кавычки. В приведенном ниже фрагменте кода у нас есть пример строки шаблона, также известной как литерал шаблона.

`Hello, World!`

Примечание. На большинстве клавиатур обратная кавычка может располагаться над клавишей TAB, слева от клавиши с цифрой 1.

Различия между шаблоном и обычной строкой

Есть несколько способов, которыми строка шаблона отличается от обычной строки.

  • Во-первых, он допускает переменную интерполяцию:

let greet = "Hello";

let place = "World";

console.log(`${greet} ${place} !`) // Hello World !

Использование литералов шаблонов позволяет программистам вставлять переменные непосредственно между обратными кавычками, без необходимости использовать оператор + и одинарные или двойные кавычки для отделения строковых литералов от переменных. Другими словами, в ES5 приведенный выше пример нужно было бы написать следующим образом:

var greet = "Hello";

var place = "World";

console.log(greet + " " + place + "!");

  • Помимо интерполяции переменных, строки шаблона могут занимать несколько строк.

Например, это совершенно хороший синтаксис:

Обратите внимание, что это невозможно сделать с помощью строковых литералов (то есть строк, заключенных в одинарные или двойные кавычки):

"Hello,
World"

Приведенный выше код при запуске выдает синтаксическую ошибку.

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

  • Кроме того, поскольку литералы шаблонов позволяют вычислять выражения, в эти литералы можно интерполировать переменные. Другими словами, это:

console.log(`${1 + 1 + 1 + 1 + 1} stars!`)

В приведенном выше примере в консоли будет отображаться следующая строка: 5 stars!

Это открывает множество возможностей. Например, возможно вычисление троичного выражения внутри литерала шаблона. Некоторые дополнительные варианты использования литералов шаблонов — это вложенные литералы шаблонов и шаблоны с тегами. Однако они немного сложнее и выходят за рамки этого чтения.

Я был бы признателен услышать от вас, если у вас есть какие-либо комментарии! Смело подключайтесь на LinkedIn.

Спасибо за чтение!