var 命令
var用来声明一个变量
1.可以重复声明
2.存在变量提升
3.不存在块级作用域(es5只存在全局作用域和函数作用域)
let 命令
和var用法相似
1.不存在变量提升
2.存在块级作用域(for循环中用let声明的变量,在循环外访问时not defind)有效防止全局污染
3.相同作用域里,不允许重复声明同一个变量
const命令
const声明一个只读的常量,一旦声明值不可改变
1.和let一样只在声明所在的块级作用域内有效。
2.const声明的常量,也与let一样不可重复声明。
3.和var,let区别一旦声明值不可改变