5

1.var f = new Function("a", "b", "return a+b")

2.var f2 = Function("a", "b", "return a+b")

f两者f2都是匿名函数。f(1,2)并且f2(1,2)都返回3。那么两者之间有任何实际的内部差异吗?内部是否Function返回函数对象?与使用Functionas 构造函数的区别new Function(...)

4

1 回答 1

7

ECMAScript 5.1 规范

当 Function 作为函数而不是构造函数调用时,它会创建并初始化一个新的 Function 对象。因此,函数调用 Function(...) 等价于具有相同参数的对象创建表达式 new Function(...)。

于 2015-07-06T23:30:56.793 回答