美文网首页
if(xx)和a == b如何判断

if(xx)和a == b如何判断

作者: 阿猪_341c | 来源:发表于2019-06-28 20:36 被阅读0次

    if(xx)作为条件判断语句时,在(xxx)为非严格意义上的等式如何判断条件为true还是false?
    六种数据类型,undefined,number,string,boolean,null与object,在进行if条件语句判断时都会转化为boolean类型判断,其转换规则如下:


    image.png

    如:

    var a=5
    if(a){
        console.log('true')
    } // true
    
    a=0
    if(a){
        console.log('true')
    } 
    else{
        console.log('false')
    }// false
    
    a=NaN
    if(a){
        console.log('true')
    } 
    else{
        console.log('false')
    }//false
    
    a=null
    if(a)){
        console.log('true')
    } 
    else{
        console.log('false')
    }//false
    

    a==b的判断
    a == b的判断分为两种情况,两者数据类型相同时的判断与数据类型不同时的判断。

    1.当两者数据类型相同时

    当a与b的数据类型相同时,两者执行严格的相等运算;

    2.当两者数据类型不相同时

    当a与b的数据类型不相同时,会有以下几种情况;
    1.如果a和b一个是null,一个是undefined时,相等。
    2.如果a和b一个是数字,一个是字符串,先将字符串转为数字,然后比较。
    3.如果a和b一个值是true,一个值是false则将其转为1和0比较。
    4.如果a和b一个值是对象,一个是数字或字符串,则尝试使用valueOf和toString转换后比较。
    5.其它情况下都不相等。

    相关文章

      网友评论

          本文标题:if(xx)和a == b如何判断

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