从ECMA6开始引入了另外两个声明变量的方式。
    1、以前的var声明变量都会被提前,而且没有局部变量,并且你声明的变量只会分为全局变量跟函数内的变量。
    现在let可以声明局部变量,例如

    1. {
    2. var a=1;
    3. let b=2;
    4. }
    5. console.log(a);
    6. console.log(b);
    7. //最后输入结果为 1,b is not defined.b未定义,在大括号之外的b已经出了作用域了,所以会报错。
    8. 但是a依然会被访问到。