Неизменяемость примитивных типов

Что произойдет, если попытаться изменить символ в строке?

let firstName = 'Alexander';
// Код выполнится без ошибок
firstName[0] = 'B';
console.log(firstName); // => "Alexander"

Как это ни странно, но значение переменной firstName останется прежним, хотя код выполнится без ошибок. Так происходит из-за неизменяемости примитивных типов в JavaScript — язык не дает никакой физической возможности поменять строку. Неизменяемость примитивных типов важна по многим причинам, ключевая - производительность. Но что делать, если нам действительно нужно её изменить? Для этого и существуют переменные:

let firstName = 'Alexander';
// Код выполнится без ошибок
firstName = 'Blexander'
console.log(firstName); // => "Blexander"

Есть большая разница между изменением значения переменной и изменением самого значения. Примитивные типы в JavaScript поменять нельзя (а вот составные можно, подробнее о них уже на самом Хекслете), а заменить значение переменной - без проблем.

Задание

Вам даны три константы с фамилиями разных людей. Составьте и выведите на экран слово из символов в таком порядке:

  1. Третий символ из первой строки;
  2. Второй символ из второй строки;
  3. Четвертый символ из третьей строки;
  4. Пятый символ из второй строки;
  5. Третий символ из второй строки;

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


Нашли ошибку? Есть что добавить? Пулреквесты приветствуются https://github.com/hexlet-basics
Если вы столкнулись с трудностями и не знаете, что делать, задайте вопрос в нашем большом и дружном cообществе
Упражнение доступно только авторизованным пользователям.

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