const 就不用多说了,一个值一经初始化不再发生变化,就用 const定义,效率更高
let 的作用域是块级作用域和全局作用域,块级作用域就是{} 比如 for 循环最适合用 let,在 for(){} 之外就不存在你定义的变量了
var 的作用域是函数作用域和全局作用域,函数作用域是在一个函数内该变量一直有效,里层函数可以获取外层函数的变量
var 存在变量提升, let 不存在,不声明就使用会报错
let 不允许在同一作用域内重复定义
在全局作用域使用 let 变量时,该变量不再属于全局属性