2015-02-07 31 views
0

函数在JavaScript中创建闭包。应该使用Function构造函数形成一个闭包?

在JavaScript中定义函数有三种方法:函数声明,函数表达式(命名/未命名),并使用构造函数。

应该使用函数构造函数形式闭包?

+0

不,它没有,除非你想把关闭的全局范围关闭。 – 2015-02-07 13:29:09

+0

你问是否应该这样,或者是什么实际行为? – 2015-02-07 13:29:20

+0

应该是这样。 – Ben 2015-02-07 13:30:51

回答

1

不。他们总是处于全球背景下,能够访问自己的变量,显然是全球变量。

MDN:(重点煤矿)与功能构造创建自己的创作情境没有创建关闭

功能;它们始终在全球范围内创建。在运行它们时,它们只能访问自己的局部变量和全局局部变量,而不能调用函数构造函数调用的范围中的那些局部变量和局部变量。这与用函数表达式的代码使用eval 不同。

相关问题