const
не создает неизменности - это просто означает, что ссылка , присвоенная ему при создании, не может быть изменена позже (что просто означает, что вы не можете присвоить ему новое значение).
См. Эти примеры:
const a = {}
a = { name: "peter" } // => TypeError: invalid assignment to const `a'
Однако не составляет труда назначить свойство на a
:
const a = {}
a.name = "peter"
console.log(a); // => { "name": "peter" }
То же самое относится к Array
объектам:
const arr = [{}]
arr.push(1);
arr[0].name="peter"
console.log(arr);
// [
// {
// "name": "peter"
// },
// 1
// ]