应该使用Function构造函数形成一个闭包?

时间:2015-02-07 13:26:26

标签: javascript

函数在JavaScript中创建一个闭包。

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

应该使用Function构造函数形成一个闭包吗?

1 个答案:

答案 0 :(得分:1)

没有。它们总是在全球范围内,能够访问自己的变量,显然是全局变量。

MDN:(强调我的)

  

使用Function构造函数创建的函数不会创建闭包   他们的创作背景;它们总是在全球范围内创造的   范围。在运行它们时,它们只能访问自己的   局部变量和全局变量,而不是来自范围的变量   调用了Function构造函数。这与使用eval不同   使用函数表达式的代码。