<MyRusakov.ru />

Создание игр на Unreal Engine 5

Создание игр на Unreal Engine 5

Данный курс научит Вас созданию игр на Unreal Engine 5. Курс состоит из 12 модулей, в которых Вы с нуля освоите этот движок и сможете создавать самые разные игры.

В курсе Вы получите всю необходимую теоретическую часть, а также увидите массу практических примеров. Дополнительно, почти к каждому уроку идут упражнения для закрепления материала.

Помимо самого курса Вас ждёт ещё 8 бесплатных ценных Бонусов: «Chaos Destruction», «Разработка 2D-игры», «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства», «Создание прототипа RPG с открытым миром» и и весь курс «Создание игр на Unreal Engine 4» (актуальный и в 5-й версии), включающий в себя ещё десятки часов видеоуроков.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Шаблонные строки в JavaScript: Template Literals с примерами для начинающих

Шаблонные строки в JavaScript: Template Literals с примерами для начинающих

Поисковый запрос, под который написана эта статья: шаблонные строки JavaScript. Тема кажется простой, но именно template literals часто делают код заметно чище: вместо сложения строк через + вы используете обратные кавычки, вставляете переменные через ${...} и спокойно пишете многострочный текст.

Что такое шаблонные строки в JavaScript

Шаблонные строки — это строки, заключённые не в одинарные или двойные кавычки, а в обратные кавычки: `. На английском их называют template literals.

Самый простой пример:

const name = 'Анна';
const message = `Привет, ${name}!`;

console.log(message); // Привет, Анна!

Главная идея: внутри такой строки можно использовать выражения в конструкции ${...}. Это называется интерполяцией.

Зачем нужны template literals

До появления шаблонных строк разработчики часто писали так:

const user = 'Иван';
const age = 25;

const text = 'Пользователь: ' + user + ', возраст: ' + age;
console.log(text);

С template literals тот же код читается проще:

const user = 'Иван';
const age = 25;

const text = `Пользователь: ${user}, возраст: ${age}`;
console.log(text);

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

Интерполяция переменных и выражений

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

const price = 1200;
const count = 3;

console.log(`Итого: ${price * count} руб.`);
// Итого: 3600 руб.

Пример с функцией:

function formatName(firstName, lastName) {
  return `${firstName} ${lastName}`;
}

const greeting = `Здравствуйте, ${formatName('Мария', 'Соколова')}!`;
console.log(greeting);

Пример с условием:

const isAdmin = false;

const label = `Роль: ${isAdmin ? 'администратор' : 'пользователь'}`;
console.log(label);

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

Многострочные строки без \n

Шаблонные строки позволяют писать текст в несколько строк так, как он должен выглядеть в результате.

const text = `Первая строка
Вторая строка
Третья строка`;

console.log(text);

Это удобно для сообщений, писем, SQL-подобных строк, фрагментов HTML и других случаев, где важна читаемость.

Для сравнения, без template literals пришлось бы писать так:

const text = 'Первая строка\n' +
  'Вторая строка\n' +
  'Третья строка';

Создание HTML-разметки через шаблонные строки

Один из самых частых практических сценариев — генерация небольшого HTML-фрагмента на основе данных.

const product = {
  title: 'Клавиатура',
  price: 3500,
  inStock: true
};

const html = `
  <article class="product">
    <h3>${product.title}</h3>
    <p>Цена: ${product.price} руб.</p>
    <p>${product.inStock ? 'В наличии' : 'Нет в наличии'}</p>
  </article>
`;

document.body.insertAdjacentHTML('beforeend', html);

Это удобно, но есть важное правило безопасности: не вставляйте непроверенные пользовательские данные напрямую в HTML. Если значение пришло из формы или внешнего API, его нужно экранировать или вставлять через безопасные DOM-методы.

Пример: список товаров

Рассмотрим более прикладной пример. Есть массив товаров, нужно вывести список на страницу.

const products = [
  { title: 'Мышь', price: 1500 },
  { title: 'Монитор', price: 19000 },
  { title: 'USB-C кабель', price: 700 }
];

const listHtml = `
  <ul class="products">
    ${products.map(product => `
      <li>${product.title} — ${product.price} руб.</li>
    `).join('')}
  </ul>
`;

document.body.insertAdjacentHTML('beforeend', listHtml);

Здесь важно обратить внимание на .join(''). Метод map возвращает массив строк, а join объединяет их в одну строку без запятых.

Tagged templates: продвинутый, но полезный приём

У шаблонных строк есть расширенный вариант — tagged templates, или тегированные шаблоны. Перед строкой можно поставить функцию, которая получит части строки и значения.

function highlight(strings, ...values) {
  return strings.reduce((result, str, index) => {
    const value = values[index] !== undefined ? `<b>${values[index]}</b>` : '';
    return result + str + value;
  }, '');
}

const name = 'Олег';
const score = 95;

const result = highlight`Студент ${name} набрал ${score} баллов.`;
console.log(result);
// Студент <b>Олег</b> набрал <b>95</b> баллов.

Новичкам не обязательно сразу активно использовать tagged templates, но полезно знать, что такой механизм существует. Он применяется в библиотеках для стилизации, шаблонизации и безопасной обработки строк.

Частые ошибки новичков

  • Используют обычные кавычки вместо обратных. Интерполяция работает только с `...`, а не с '...' или "...".
  • Забывают фигурные скобки. Нужно писать ${name}, а не $name.
  • Пишут слишком сложные выражения внутри строки. Это ухудшает читаемость.
  • Вставляют пользовательский ввод в HTML без защиты. Это может привести к XSS-уязвимостям.

Пример ошибки:

const name = 'Саша';

console.log('Привет, ${name}!');
// Привет, ${name}!

Правильно:

const name = 'Саша';

console.log(`Привет, ${name}!`);
// Привет, Саша!

Практические рекомендации

  • Используйте шаблонные строки, когда нужно вставить переменные в текст.
  • Для длинных сообщений и HTML-фрагментов template literals обычно удобнее конкатенации.
  • Если выражение внутри ${...} занимает больше одной строки, вынесите его в переменную.
  • Не используйте шаблонные строки просто ради моды: для простого текста 'Обычная строка' тоже подходит.
  • При генерации HTML проверяйте и экранируйте данные, полученные от пользователя.

Мини-задача для закрепления

Попробуйте написать функцию, которая принимает объект пользователя и возвращает красивую строку профиля.

function getUserProfile(user) {
  return `Имя: ${user.name}
Возраст: ${user.age}
Город: ${user.city}`;
}

const profile = getUserProfile({
  name: 'Елена',
  age: 28,
  city: 'Казань'
});

console.log(profile);

Такие небольшие упражнения хорошо прокачивают базовый синтаксис. Если вы хотите изучать JavaScript системно — от переменных и функций до DOM, асинхронности и реальных проектов — посмотрите курс «JavaScript с Нуля до Гуру 2.0» с пошаговой практикой.

Итоги

Шаблонные строки в JavaScript — это удобный способ создавать читаемые строки с переменными, выражениями и переносами строк. Используйте обратные кавычки, вставляйте значения через ${...}, не перегружайте шаблоны сложной логикой и помните о безопасности при работе с HTML. Освоив template literals, вы сразу начнёте писать более аккуратный и понятный JavaScript-код.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (https://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: https://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: https://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.