有关JS中的0,null,undefined,[],{},'''''''',false之间的关系

0与一些虚值的比较:

0与false

0==false
true

0与'':

0==''
true 

0与[]:

0==[]
true 

0与NaN:

0==NaN
false

0与undefined

0==undefined
false

0与null

0==null
false 

0与{}

0=={}
false

''空值与一些值的比较

?
1
2
3
4
5
6
7
8
9
10
11
12
'' == false
true
'' ==undefined
false
'' == null
false
'' ==NaN
false
'' ==[]
true
'' =={}
false

 空值与false,[]的相等的

?
1
undefined == null ==> true

这些也不知道叫什么值的一些对比,这些值是否在一起相等 在一些js中可以用到

下面在给大家补充下js中的undefined,null,空字符串,false,true之间的关系

因为在其他书上看到undefined,null,空字符串都能当作false用在if语句判断,所以一直以为undefined,null,空字符串,false之间是相等的关系;

前段时间在写代码时偶然发现nudefined==null;但此两者并不等于空字符和false;了搞明白他们之间的关系,我又在浏览器上面试了一下;下面就是实验结果

false为boolean型;‘'为字符串型;当不考虑他们的数据类型时两者相等;当考虑数据类型时两者不相等

实验发现null的数据类型为object ;无论是否考虑数据类型空字符和空都不相等

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

猜你喜欢

转载自blog.csdn.net/czqqqqq/article/details/79192161