ES6 之 let const

1 let 声明的变量只能本身读取不能和var声明的混淆数组

2 只要有let声明的代码块里,在声明的变量前调用就会报错数据结构

3 同一个变量不能声明2次指针

const :code

1 做用域相似let对象

2 声明的常量不可改变,基本类型数据也是内存

const实际上保证的,并非变量的值不得改动,而是变量指向的那个内存地址不得改动。对于简单类型的数据(数值、字符串、布尔值),值就保存在变量指向的那个内存地址,所以等同于常量。但对于复合类型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指针,const只能保证这个指针是固定的,至于它指向的数据结构是否是可变的,就彻底不能控制了。所以,将一个对象声明为常量必须很是当心。作用域

4 可是能够改变对象性值和添加属性 不能赋值新的对象和数组字符串

5 若是真的想将对象冻结,应该使用Object.freeze方法。io

 

顶层对象function

1var命令和function命令声明的全局变量,依旧是顶层对象的属性;另外一方面规定,let命令、const命令、class命令声明的全局变量,不属于顶层对象的属性。

相关文章
相关标签/搜索