我试图了解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'
我认为:
我不明白 var a 和 var d 声明之间有什么区别。
有人可以告诉我为什么在var声明中允许使用函数标识符,在这种情况下 b 的含义是什么?