1.作用域:
var声明的变量为全局变量,而 let 和 const 声明的变量具有块级作用域。
补充:块级作用域就是一对大括号中形成的作用域,如果在这对大括号中使用 let 和 const 声明变量,则在大括号外面将无法使用这俩个关键字声明的变量。
2.变量提升:
var 存在变量提示,而 let 和 const 不存在变量提示,即 let 和 const 必须先声明后使用。
3.重复声明:
var 允许变量重复声明,且后声明的会覆盖的之前声明的,而 let 和 const 是不允许变量重复声明的。
4.值是否允许修改
var 和 let 是允许修改其变量值的,而 const 不允许修改变量值。
5.初始值设置:
在变量声明时,var 和 let 可以不用设置初始值。而const声明变量必须设置初始值。