Kasan Blog

const 并非完全只读

const 只保存了变量的地址

只要地址不改变,const就不认为是修改

所以基本类型const 是不能修改的


因为在顺序存放的栈(stack)里同样的数据并不会进行多次存储,而是存储一次,把地址分发给不同的变量,所以只要数据变动了,地址就变动了,自然无法过const


而引用类型,比如存放在堆(heap)里的,比如对象,函数,数组等,只要不改变地址就可以过const

const a = [1]

a[0] = 1

console.log(a) // 1