美文网首页
关于if(xx)和 a==b的判断

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

作者: 单纯的无邪 | 来源:发表于2018-12-19 21:50 被阅读0次

    if(xx)

    经常会遇到if(xx)的判断
    解析:对于对于括号里的表达式,会被强制转换为布尔类型。

    类型 转换后结果
    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转换

    相关文章

      网友评论

          本文标题:关于if(xx)和 a==b的判断

          本文链接:https://www.haomeiwen.com/subject/kbyskqtx.html