Константи со низи или објекти во 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);