美文网首页
es6基础语法-const

es6基础语法-const

作者: Monica114 | 来源:发表于2019-01-31 15:45 被阅读0次

const声明一个只读的常量。一旦声明,常量的值就不能改变。

1.const和let一样只在当前代码块有效,且不能重复声明

2.作用域不会被提升

3.声明的常量必须被赋值

而let和const都是在声明所在的块级作用域内有效,let声明的变量可以改变,值和类型都可以改变,而const声明的变量一开始就需要初始化,不能留在后面在赋值。

理论来说const声明的变量的值不得改动,意思其实是变量指向的那个内存地址所保存的数据不得改动,上面代码中,常量zs储存的是一个地址,这个地址指向一个对象。不可变的只是这个地址,即不能把zs指向另一个地址,但对象本身是可变的,所以依然可以为其添加新属性,最后将 zs 指向另一个对象,就会报错TypeError: Assignment to constant variable.

如果想让定义的对象或数组的内部数据也不能够修改和改变,可以使用object.freeze(names)进行冻结,这样为对象添加新属性就不起作用。

相关文章

网友评论

      本文标题:es6基础语法-const

      本文链接:https://www.haomeiwen.com/subject/uroksqtx.html