Logo
/
Programming
/
JavaScript Course
/

Primitive data types immutability

JavaScript: Primitive data types immutability

What happens if you change a character in a string?

let firstName = 'Alexander';
// the code will run correctly
firstName[0] = 'B';
console.log(firstName); // => 'Alexander'

Oddly, the value of the firstName variable remains the same, and the code is executed without errors. This is possible due to the immutability of primitive types in JavaScript. There are no ways to change a string itself. The immutability of primitives is important for many reasons, and performance is a key one. But how do we edit a string? We have variables for this purpose:

let firstName = 'Alexander';
// the code will run correctly
firstName = 'Blexander'
console.log(firstName); // => 'Blexander'

There is a big difference between changing the value of a variable and the value itself. You can't change primitive types in JavaScript (but you can change composite types, learn more about this on Hexlet), but changing the value of a variable is not a problem.

Instructions

Here are three constants with different people's names. Make up and print a word out of the characters in this order:

  1. The third character from the first line.
  2. The second character from the second line.
  3. The fourth character from the third line.
  4. The fifth character from the second line.
  5. The third character from the second line.

Try using interpolation: you can put individual characters (called via square brackets) inside curly brackets, as well as variables.

If you've reached a deadlock it's time to ask your question in the «Discussions». How ask a question correctly:

  • Be sure to attach the test output, without it it's almost impossible to figure out what went wrong, even if you show your code. It's complicated for developers to execute code in their heads, but having a mistake before their eyes most probably will be helpful.
Found a bug? Have something to add? Pull requests are welcome!