首页 > 其他 > 详细

[ES6] 05. The leg keyword -- 3. Block Scope

时间:2014-11-20 01:12:34      阅读:288      评论:0      收藏:0      [点我收藏+]

In ES6, IIFE is not necessary:

// IIFE写法
(function () {
    var tmp = ...;
    ...
}());

// 块级作用域写法
{
    let tmp = ...;
    ...
}

 

另外,ES6也规定,函数本身的作用域,在其所在的块级作用域之内

function f() { console.log(‘I am outside!‘); }
(function () {
  if(false) {
    // 重复声明一次函数f
    function f() { console.log(‘I am inside!‘); }
  }

  f();
}());

上面代码在ES5中运行,会得到“I am inside!”,但是在ES6中运行,会得到“I am outside!”

 

(function () {
    if(true) {
        // 重复声明一次函数f
        function f() { console.log(‘I am inside!‘); }
        f();
    }


}());
function f() { console.log(‘I am outside!‘); }

上面代码在ES6中运行,会得到“I am inside!”

[ES6] 05. The leg keyword -- 3. Block Scope

原文:http://www.cnblogs.com/Answer1215/p/4109521.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!