var
- var 声明的变量会挂载在window上,是全局变量,没有块级作用域
- var 变量声明可以提升
- var 变量可以重复声明
let
- let 声明的变量是局部变量,即let声明的变量只能在对应代码块中使用,拥有块级作用域,
- let 变量声明不可以提升,即在变量声明之前无法使用该变量
- let 变量不可以重复声明
const
- const 声明一个常量,拥有块级作用域,只能在当前代码块中使用
- const 常量声明不可以提升
- const 常量不可以重复声明
- const 常量声明和初始化必须同时进行