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

Константы, содержащие массивы и объекты, работают интересным образом. JavaScript не разрешает изменять значения этих констант, но изменять свойства объектов и значения элементов массивов - можно.

Давайте посмотрим на примерах. Пусть у нас дан вот такой объект:

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

Давайте попробуем записать в него что-то другое:

`obj = 123; // ошибка`

Давайте попробуем записать в константу другой объект:

`obj = {x: 1, y: 2, z: 3}; // ошибка`

Однако, если мы попробуем изменить свойство объекта, то это сработает:

`obj.a = '+'; // работает!`

Что выведется в результате выполнения следующего кода:

`const arr = ['a', 'b', 'c']; arr[1] = '!'; console.log(arr);`

Что выведется в результате выполнения следующего кода:

`const arr = ['a', 'b', 'c']; arr = [1, 2, 3]; console.log(arr);`

Что выведется в результате выполнения следующего кода:

`const arr = ['a', 'b', 'c']; arr = ['a', 'b', 'c']; console.log(arr);`
← →
↑
en ru