ES6学习笔记之块级作用域

2017-09-19  本文已影响0人  markpapa

ES5 只有全局作用域和函数作用域,没有块级作用域,let实际上为 JavaScript 新增了块级作用域。

例子:

function f(){
      let x = 8;
      if(true){
          let x = 10;
      }
    console.log(x);  // 8
}

Tips :外层代码块不受内层代码块的影响,运行后输出8

ES6 允许块级作用域的任意嵌套。

    {{{{let a = 8;}}}}

内层作用域可以定义外层作用域的同名变量。

     {{{
      let name = 'mark';
      {let name = 'mark';}
     }}}

外层作用域无法读取内层作用域的变量。

    {
    {let name = 'mark';}
    console.log(name); // // 报错
    }
上一篇 下一篇

猜你喜欢

热点阅读