新功能与功能

时间:2016-04-05 03:07:15

标签: javascript

使用new Function查看代码非常常见,而不仅仅是Function。我想了解为什么new运算符在这里做了什么。

这两者之间的区别是什么?

var y = new Function("a", "alert(a)")
var x = Function("a", "alert(a)")

1 个答案:

答案 0 :(得分:3)

来自the docs

  

Function构造函数创建一个新的Function对象。在JavaScript中,每个函数实际上都是Function对象。

     

...

     

Function构造函数作为函数调用(不使用new运算符)与将其作为构造函数调用具有相同的效果。

由于函数实际上是Javascript中的对象,因此可以通过标准调用语法和new运算符(在这种情况下实例化Function类型的新对象)来调用它们。

我从文档中引用的最后一行是说,Function()与调用new Function() 相同

TL;博士

没有区别。