关于js中的null、undefined和true、false的关系

文章2021-08-3152 人已阅来源:渴望成为大牛的男人

这个问题,很有意思,特别神奇

如果你用null来判断null==false以及null==true,你会发现返回的结果都是false,这个结果是不是让你觉得很奇怪。

然后你可以再试试undefined==false以及undefined==true,同样的,你会发现,返回的结果同样都是false

再接下来,试试null==undefined,惊呆了,居然返回一个true

接下来就是null和undefined的详解

在某种意义上,null就是空的意思,undefined就是未定义,大概就是js的一种规定吧,所以它们两者既不是false也不是true

但是如果用他们两者作为判断条件的话,在判断条件中他们可以当做false来作为if语句的判断

最后我们说说null和undefined

当不考虑这两者的字符类型的时候,null==undefined是为true的

但是如果考虑字符类型的时候,null的字符类型是Object,而undefined的字符类型是undefined

如果你用typeof undefined==typeof null,那么返回结果则为false

总结就是当不考虑字符类型时发现undefined等于null 当考虑字符类型时undefined不等于空