关于 if(xx)和 a==b的判断的总结

2017-08-26  本文已影响0人  海山城

if(xx)

对于if(xx),是把xx转换成boolean在进行判断
各类型转换布尔结果:

类型 转换后结果
Undefined false
Null false
Boolean 直接判读
Number -0,+0,NaN为false,其他的为true
String 空串("")为false,其他的为true,需要注意的是空白字符串(" ")也是为true
Object true

a==b

对于a==b,是将两边转换成数值进行判断
各类型转换成数值结果:

类型 转换后结果
Undefined 不转换
Null 不转换
Boolean true为1,false为0
Number 即为数值
String 空串("")为0,空白字符串(" ")也是为0;“123”类型的字符串为里面的数值,“hello”类型的字符串为NaN
Object 根据valueOf或toString转换
上一篇 下一篇

猜你喜欢

热点阅读