ES6中块级作用域
2017-09-10 15:11
267 查看
function f() { console.log(‘I am outside!’); }
(function () {
if (false) {
// 重复声明一次函数f
function f() { console.log(‘I am inside!’); }
}
f();
}());
ES6标准中上面函数在chorme开发环境中的结果是:
Uncaught TypeError: f is not a function
很明显,ES6标准中的块级作用域里面声明的函数在作用域以外是不能调用的。
上面的代码中*if语句后面接的就是一个块级作用域,他的外面是匿名函数的函数作用域,在函数作用域(父级作用域)不能调用块级作用域(子作用域)里面的函数或者变量,两者不共通*。
如果要在匿名函数调用f();
函数形式应该是:
输出结果是:I am inside!
(function () {
if (false) {
// 重复声明一次函数f
function f() { console.log(‘I am inside!’); }
}
f();
}());
ES6标准中上面函数在chorme开发环境中的结果是:
Uncaught TypeError: f is not a function
很明显,ES6标准中的块级作用域里面声明的函数在作用域以外是不能调用的。
上面的代码中*if语句后面接的就是一个块级作用域,他的外面是匿名函数的函数作用域,在函数作用域(父级作用域)不能调用块级作用域(子作用域)里面的函数或者变量,两者不共通*。
如果要在匿名函数调用f();
函数形式应该是:
JavaScript function f() { console.log('I am outside!'); } (function () { function f() { console.log('I am inside!'); } f(); }());
输出结果是:I am inside!
相关文章推荐
- ES6入门(一):块级作用域
- ES6 let命令和块级作用域和const命令
- ES6 块级作用域
- ES6 let,const命令和块级作用域
- Es6入门之块级作用域
- ES6 - Note1:块级作用域与常量
- ES6里关于作用域的拓展:块级作用域
- ES6中块级作用域
- 深入理解ES6学习笔记之块级作用域绑定
- es6学习第1天,箭头函数 块级作用域
- ECMAScript6(ES6)标准之let、const关键字与块级作用域
- ES6 块级作用域
- ES6的块级作用域--读书笔记
- ES6之块级作用域与函数声明--读书笔记
- 深入理解ES6 - 块级作用域绑定
- es6-块级作用域绑定
- ES6-let带来了更简单的块级作用域
- ES6之块级作用域
- ES6中的块级作用域
- ES6之块级作用域