Let & Const let 基础用法 很简单就能说明这个问题 if(false) { var a = 'heihei' } a = undefined if(true) { var a = 'heihei' } a = heihei 也就是说. { } 是木有作用域的. 里面声明的外面依然能够访问. if(true) { let b = 'heihei_b' } b = undefined 这样就有作用域了. 我想 w3c 如果不是为了兼容老代码. 可能直接强制用var 也遵循 代码块有作用…