Javascript jquery!$坏代码?还是不?

Javascript jquery!$坏代码?还是不?,javascript,jquery,Javascript,Jquery,我正在调试jquery代码,发现了语法!$,对我来说,$很正常,但我从未见过!$,你们知道这是什么意思吗?或者这是错误的或者有什么意义 jquery文件 <script type="text/javascript"> if(!$(".class").length){ alert(); } if(google < 4 && !$(".class").hasClass("blue"

我正在调试jquery代码,发现了语法!$,对我来说,$很正常,但我从未见过!$,你们知道这是什么意思吗?或者这是错误的或者有什么意义

jquery文件

<script type="text/javascript">
    if(!$(".class").length){
                alert();            
    }   
    if(google < 4 && !$(".class").hasClass("blue")) {
    $("#id").addClass('yellow');
</script>

如果(!$(“.class”).length){
警惕();
}   
如果(谷歌<4&&!$(“.class”).hasClass(“蓝色”)){
$(“#id”).addClass('yellow');
这个:

!$(".class").length
!$(".class").hasClass("blue")
如果没有类名为
class
的元素,那么它的长度将是
0
,这相当于js中的
false
,并且
表示not操作

所以,
!0
表示
为真

还有这个:

!$(".class").length
!$(".class").hasClass("blue")
在jQuery
hasClass
中,返回布尔值
true/false
,因此它的输出将是相反的

如果元素有蓝色类,则
!true
表示
false
;如果元素没有类,则
!false
表示
true
此项:

!$(".class").length
!$(".class").hasClass("blue")
如果没有类名为
class
的元素,那么它的长度将是
0
,这相当于js中的
false
,并且
表示not操作

所以,
!0
表示
为真

还有这个:

!$(".class").length
!$(".class").hasClass("blue")
在jQuery
hasClass
中,返回布尔值
true/false
,因此它的输出将是相反的

如果元素有蓝色类,则
!true
表示
false
;如果元素没有类,则
!false
表示
true
此项:

!$(".class").length
!$(".class").hasClass("blue")
如果没有类名为
class
的元素,那么它的长度将是
0
,这相当于js中的
false
,并且
表示not操作

所以,
!0
表示
为真

还有这个:

!$(".class").length
!$(".class").hasClass("blue")
在jQuery
hasClass
中,返回布尔值
true/false
,因此它的输出将是相反的

如果元素有蓝色类,则
!true
表示
false
;如果元素没有类,则
!false
表示
true
此项:

!$(".class").length
!$(".class").hasClass("blue")
如果没有类名为
class
的元素,那么它的长度将是
0
,这相当于js中的
false
,并且
表示not操作

所以,
!0
表示
为真

还有这个:

!$(".class").length
!$(".class").hasClass("blue")
在jQuery
hasClass
中,返回布尔值
true/false
,因此它的输出将是相反的


如果元素有蓝色的类,那么
!true
表示
错误
,如果元素没有类,那么
!false
表示
正确
,您将其误解为
!$
,但是
正在读取完整的表达式,而不仅仅是
$

可以更清楚地看到如下信息:

if( !($(".class").length) ) //inner () gets evaluated then inverted by `!`
或:

这两个示例相当于使用
if(!$(“.class”).length)


请参见

您将其误解为
!$
,但
正在读取完整的表达式,而不仅仅是
$

可以更清楚地看到如下信息:

if( !($(".class").length) ) //inner () gets evaluated then inverted by `!`
或:

这两个示例相当于使用
if(!$(“.class”).length)


请参见

您将其误解为
!$
,但
正在读取完整的表达式,而不仅仅是
$

可以更清楚地看到如下信息:

if( !($(".class").length) ) //inner () gets evaluated then inverted by `!`
或:

这两个示例相当于使用
if(!$(“.class”).length)


请参见

您将其误解为
!$
,但
正在读取完整的表达式,而不仅仅是
$

可以更清楚地看到如下信息:

if( !($(".class").length) ) //inner () gets evaluated then inverted by `!`
或:

这两个示例相当于使用
if(!$(“.class”).length)


请参见

在本上下文中,在许多编程语言中,意思是
不是
,只需修改后面的内容即可。由于与您遇到的原因完全相同,通常在可能的情况下避免使用它。有时扫描起来可能会很尴尬,因为它需要额外的大脑
处理

但有时它是必要的,你会看到它的使用

因此,正如一些人所解释的,它不是引用$本身,而是引用$(“.class”).length解析为什么

您可以继续键入
继续添加not

我发现在阅读时,在脑海中用“NOT”代替“s”很有帮助。

因此,我脑海中的!$(“.class”).length读作:
具有.class的DOM元素没有任何长度。

例如:

true == true
!true == false
!false == true
!!true == true

在这种情况下,在许多编程语言中意味着
不是
,只需修改后面的内容即可。由于与您遇到的完全相同的原因,通常在可能的情况下避免这样做。有时扫描起来会很尴尬,因为它需要额外的大脑
处理
,以便在您的头脑中进行解析

但有时它是必要的,你会看到它的使用

因此,正如一些人所解释的,它不是引用$本身,而是引用$(“.class”).length解析为什么

您可以继续键入
继续添加not

我发现在阅读时,在脑海中用“NOT”代替“s”很有帮助。

因此,我脑海中的!$(“.class”).length读作:
具有.class的DOM元素没有任何长度。

例如:

true == true
!true == false
!false == true
!!true == true

<代码> 在许多编程语言中,这意味着“代码>不是/CODE”,它将简单地修改下面的内容。在可能的情况下,通常可以避免与您完全相同的原因。因为需要额外的脑<代码>处理< /代码>,所以扫描有时会很困难。