Перейти к основному содержимому
Модуль 2 · Урок 1 из 45/32 в курсе~8 min
Уроки модуля (1/4)

Строки и литералы шаблонов

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

JS
'single quotes';
'double quotes';
`backticks — template literals`;

Одинарные и двойные кавычки взаимозаменяемы: используйте то, что позволяет. не экранируйте другой символ в тексте:

JS
'L\'isola'; // the apostrophe needs to be escaped
"L'isola"; // here it doesn't
"He said \"hi\"";
'He said "hi"';

Escape-персонажи

Внутри любой строки вы можете вставлять «непечатаемые» символы с помощью обратная косая черта:

  • \n — новая строка
  • \t — вкладка
  • \\ — буквальная обратная косая черта
  • \' / \" — буквальные одинарные/двойные кавычки
JS
console.log('line 1\nline 2');
// line 1
// line 2

Литералы шаблона: синтаксис, который вы хотите использовать по умолчанию.

Обратные кавычки открывают две вещи, которые невозможно сделать с другими разделителями:

  1. Многострочные строки без escape-символов: допускаются буквальные символы новой строки.
  2. Интерполяция: внутри ${ … } вы можете разместить любое JS-выражение и его значение вставляется в результат.
JS
const nome = 'Anna';
const eta = 28;

const messaggio = `Ciao ${nome}, hai ${eta} anni.
Fra un anno ne avrai ${eta + 1}.`;

Выражение внутри ${ … } не обязательно должно быть простым именем: оно может быть все, что создает значение, включая вызовы функций и операторы.

Объединение с +

Исторически строки составлялись с помощью +. Это все еще работает и полезно в редких случаях (например, построение строки в несколько этапов):

JS
const a = 'Ciao';
const b = 'mondo';
a + ', ' + b + '!'; // 'Ciao, mondo!'

Попробуйте это

Упражнение#js.m2.l1.e1
Попыток: 0Загрузка…

Учитывая `name = 'Luca'` и `age = 30`, составьте с помощью шаблонного литерала строку "Luca ha 30 anni". (именно этот текст) в качестве последнего выражения.

Загрузка редактора…
Показать подсказку

Используйте обратные кавычки и интерполяцию ${...} для вставки значений в строку.

Решение доступно после 3 попыток

Обзор упражнения

Упражнение#js.m2.l1.e2
Попыток: 0Загрузка…

Учитывая две цены `p1 = 7,5` и `p2 = 3,20`, верните в качестве последнего выражения строку "Итого: 10,7 евро".

Загрузка редактора…
Показать подсказку

Внутри ${...} вы можете поместить любое выражение, включая p1 + p2.

Решение доступно после 3 попыток