var声明中命名和匿名函数之间有什么区别?

时间:2015-11-24 14:55:48

标签: javascript

我试图了解js解析器是如何工作的,并想知道为什么下面的 var a 声明中没有错误:

> var a = function b() {return 1;}
undefined
> typeof a
'function'
> typeof b
'undefined'
> function c() {return 1;}
undefined
> typeof c
'function'
> var d = function () {return 1;}
undefined
> typeof d
'function'

我认为:

  • 命名函数必须声明为 c()
  • 如果你想使用函数作为var,你必须声明它像 d (使用匿名函数)

我不明白 var a var d 声明之间有什么区别。

有人可以告诉我为什么在var声明中允许使用函数标识符,在这种情况下 b 的含义是什么?

0 个答案:

没有答案
相关问题