Javascript 函数的用途仅返回布尔值

Javascript 函数的用途仅返回布尔值,javascript,jquery,minifiedjs,Javascript,Jquery,Minifiedjs,在jQuery的某些地方,我看到了两个只返回布尔值的函数,如下所示 function h(){ return !0; } function r(){ return !1; } 当布尔值可以直接写入时,这样做的目的是什么?0是错误的,1是真实的 因此,不需要将它们转换为布尔值,除非它们用于类似 if (h() === false) { 或当代码缩小为true和false时转换的代码缩小为!1和!分别为0。0是错误的,1是真实的 因此,不需要将它们转换为布尔值,除非它们用于类似

在jQuery的某些地方,我看到了两个只返回
布尔值的函数,如下所示

function h(){
   return !0;
}

function r(){
   return !1; 
}

当布尔值可以直接写入时,这样做的目的是什么?

0
是错误的,
1
是真实的

因此,不需要将它们转换为布尔值,除非它们用于类似

if (h() === false) {

或当代码缩小为
true
false
时转换的代码缩小为
!1
!分别为0

0
是错误的,
1
是真实的

因此,不需要将它们转换为布尔值,除非它们用于类似

if (h() === false) {
或当代码缩小为
true
false
时转换的代码缩小为
!1
!分别为0

字符的经济性

使用返回true或false的3个字符的函数比进行精确比较所需的字符更少

var a = false;
if (a === r()) console.log('3 characters instead of 5')
大型库通常别名常用的全局变量,如
undefined
window
以及用于缩小

例如,您可能会看到以下内容

(function($, a, b) { ... })(jQuery, window, undefined)
人物的经济性

使用返回true或false的3个字符的函数比进行精确比较所需的字符更少

var a = false;
if (a === r()) console.log('3 characters instead of 5')
大型库通常别名常用的全局变量,如
undefined
window
以及用于缩小

例如,您可能会看到以下内容

(function($, a, b) { ... })(jQuery, window, undefined)

可能是混淆?我认为阅读调试版本可能有助于您更好地理解。@Downvoter-是的,这段代码看起来像是扩展的缩小代码。@Downvoter是的,这是否意味着这些函数不会出现在原始的未统一代码中?可能。取决于模糊代码是如何创建的,以及它是否是模糊代码。但也许是的。毕竟,我的评论只是一个猜测,因此它不是答案,而是一个评论。可能是混淆?我认为阅读调试版本可能会帮助您更好地理解。@Downvoter-是的,这段代码看起来像是扩展的缩小代码。@Downvoter是的,这是否意味着此函数将不会在原始未统一的代码中?可能。取决于模糊代码是如何创建的,以及它是否是模糊代码。但也许是的。毕竟,我的评论只是一个猜测,因此它不是一个答案,而是一个评论。我不认为
h()
是用来与
false
相比较的,没有任何意义,因为在
h
中没有其他数据可以比较。我不认为
h()
是用来与
false
相比较的,没有平均值,因为在
h
中没有其他数据可供比较。