let 命令用法
1. let不存在变量提升
1 | console.log(a); //ReferenceError: a is not defined |
2. let的作用域在最近的{}之间
1 | { |
3. let不允许重复声明同一个变量
1 | let a = 1 |
4. let 存在暂时性死区
- 只要块级作用域内存在let命令,它所声明的变量就“绑定”(binding)这个区域,不再受外部的影响。
1 | var tmp = 123; |
const 命令用法
1. const声明一个只读的常量。一旦声明,必须在声明时立马赋值,常量的值就不能改变。如果声明的是对象,可以改变对象的属性。因为声明对象保存的是地址,改变对象属性并不会改变它的地址。
1 | const PI = 3.1415; |
2. 与let一样,不能重复赋值。
3. 与let一样,先声明后使用。
4. 与let一样,const的作用域就在最近的{}之间。