定义:
let和const是ES6新增的定义变量的关键字,之前定义变量的关键词是var。
let/const和var的区别
- 预解析
- var 定义的变量在代码运行时会进行预解析
- let 和const定义的变量不会,必须要在定义后使用变量
- 重复变量名
- var 可以定义重复变量名, 重复定义没有意义
- let 和 const 不能定义重复变量名
- 块级作用域
- var 是没有块级作用域,只会被私有作用域限制使用范围(函数内)
- let/const 可以被块级作用域限制使用范围
+ 块级作用域: 任何一个可以书写代码的{ } 就是块级作用域
- 注: let /const 定义变量的 {} 也称之为暂时性死区
let和const的区别
- 定义时候的赋值
- let 定义变量的时候,可以不赋值
- const 定义的时候,必须赋值
- 值修改
- let 定义的变量值可以修改
- const 定义的变量不可以修改
注意:当const定义变量的是一个对象时,可以修改对象中的属性值,因为此处const定义的变量中存储的是对象的地址,修改对象属性值时并没有修改地址