【发布时间】:2017-10-10 03:52:40
【问题描述】:
我正在尝试了解 this article 和其他地方使用的库,其中有一些非常令人费解的东西,其中有一行
var cb = void 0;
我知道void 0 返回undefined,但var 默认不是未定义的吗?为什么不直接使用下面的呢?
var cb;
【问题讨论】:
-
void 0 实际上比 undefined 短,因此它减少了代码长度。
-
请注意,我不是在问 void 0 是做什么的,而是在这种情况下为什么要明确说明。
-
我开始认为这段代码可能是代码生成器或转译器的输出,这会让我对为什么它可能不是惯用的 Javascript 感到满意。
-
是的,抱歉,我的意思是您通常会找到 void 0 而不是 undefined,因为由于它更短,因此转译器会利用它来减少转译代码的长度。
标签: javascript