在jQuery的某个地方,我看到了2个仅返回boolean
的函数,如下所示。
function h(){
return !0;
}
function r(){
return !1;
}
这样做的目的是什么,而布尔可以直接写?
答案 0 :(得分:3)
角色经济。
使用返回true或false的3字符函数比进行精确比较需要更少的字符。
var a = false;
if (a === r()) console.log('3 characters instead of 5')
大型库通常使用常用的全局变量(如undefined
和window
)来缩小。
例如,您可能会看到类似
的内容(function($, a, b) { ... })(jQuery, window, undefined)
答案 1 :(得分:2)
0
是假的,1
是真的。
因此,除非在像
这样的代码中使用它们,否则无需将它们转换为布尔值if (h() === false) {
将代码缩小为true
时转换的代码和false
分别缩小为!1
和!0
。