【发布时间】:2011-05-02 13:03:34
【问题描述】:
Learning JavaScript这本书对匿名函数的定义如下...
函数是对象。因此,您可以通过使用构造函数并将函数分配给变量来创建它们 - 就像
String或Array或其他类型一样。在以下代码中,使用Function构造函数创建了一个新函数,函数体和参数作为参数传入:var sayHi = new Function("toWhom", "alert('Hi' + toWhom);");这种类型的函数通常被称为匿名函数,因为函数本身没有被直接声明或命名。
这是 JavaScript 中“匿名函数”的正确定义吗?如果不是,什么是匿名函数,匿名函数和函数字面量有什么区别?
【问题讨论】:
-
这不是最常被称为“匿名”的函数类型。那将是一个没有名字的
FunctionExpression,例如:var fn = function(){..}vsvar fn = function fn(){...}。 -
我不认为这是一本好书,但我只能依靠这一个sn-p来判断。