Константи с масиви или обекти в JavaScript

Константите, съдържащи масиви и обекти, работят по интересен начин. JavaScript не позволява промяна на стойностите на тези константи, но промяната на свойствата на обекти и стойностите на елементите на масиви - е възможна.

Нека да разгледаме примери. Да предположим, че имаме следния обект:

javascriptconst obj = {a: 1, b: 2, c: 3};

Нека се опитаме да запишем нещо друго в него:

javascriptobj = 123; // грешка

Нека се опитаме да запишем друг обект в константата:

javascriptobj = {x: 1, y: 2, z: 3}; // грешка

Въпреки това, ако се опитаме да променим свойство на обекта, това ще работи:

javascriptobj.a = '+'; // работи!
Задание 1

Какво ще се изведе в резултат на изпълнението на следния код:

javascriptconst arr = ['a', 'b', 'c'];
arr[1] = '!';
console.log(arr);
Задание 2

Какво ще се изведе в резултат на изпълнението на следния код:

javascriptconst arr = ['a', 'b', 'c'];
arr = [1, 2, 3];
console.log(arr);
Задание 3

Какво ще се изведе в резултат на изпълнението на следния код:

javascriptconst arr = ['a', 'b', 'c'];
arr = ['a', 'b', 'c'];
console.log(arr);