const
只能保证这个指针是固定的,至于它指向的数据结构是不是可变的,就完全不能控制了
const foo = {}; // 为 foo 添加一个属性,可以成功 foo.prop = 123; foo.prop // 123 // 将 foo 指向另一个对象,就会报错 foo = {}; //
上面代码中,常量foo
储存的是一个地址,这个地址指向一个对象。不可变的只是这个地址,即不能把foo
指向另一个地址,但对象本身是可变的,所以依然可以为其添加新属性。
const a=[]; a.push(‘hello‘); //可执行 console.log(a);//可执行 a=[‘world‘] //报错