【发布时间】:2016-12-30 17:44:24
【问题描述】:
例子:
var formatDate = function(d) {
return dateFormat(d, "yyyy-mm-dd HH:MM:ss", true);
}
编译为:
var formatDate = function(a) {
return dateFormat(a, "yyyy-mm-dd HH:MM:ss", !0);
};
!0 感觉就像一个 Javascript 原语的逻辑操作,直观上看起来应该更昂贵。不是这样吗?为什么不?
【问题讨论】:
-
因为它短了两个字符。
-
这种情况下的运行时可以将
!0视为与true完全相同;换句话说,一旦代码实际运行,它很可能实际上没有任何区别,而在此之前它会节省 2 个字符。
标签: javascript operators google-closure-compiler primitive