let是块级定义
var是函数内都可以使用
function test(){
for (let i = 0;i<5;i++){
var s = 5;
}
console.log(s)
}
test()
上面的例子如果声明s的方式改成let,那么会报错,错误为未定义。
let即使在全局环境中声明也不进入window
var a = 1;
console.log(window.a)
let b = 1;
console.log(window.b) //打印的是underfined