【发布时间】:2013-10-09 21:23:47
【问题描述】:
有什么区别
var a = function() {}
和
var a = function b() {}
后者,b是未定义的?
【问题讨论】:
-
@iJay:不,没有错
-
后者会有一个
name属性,a.name === 'b' -
在后者中,b 仅在函数内部定义,但在函数外部应未定义。目的是允许匿名函数递归。较旧的 Mozilla 或 IE(不记得)有一个错误,其中 b 在函数外部未定义 - 但递归仍然有效。
-
@Pumbaa80:不重复,我在提问之前已经阅读过该主题。无论如何,谢谢!
-
@Qantas94Heavy 我知道问题是不同的。已经询问了数十种变体(例如,stackoverflow.com/questions/1013385),但它们都在stackoverflow.com/a/338053/27862中得到了回答
标签: javascript function