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

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

作者: 八十一空 | 来源:发表于2018-09-30 15:51 被阅读5次

    if(xx)

    ### if语法:

    ```

    if(condition){

        //true statement

    }else {

        //false statement

    }

    ```

    其中condition可以是任意表达式,结果不一定是布尔值,JavaScript解释器会自动调用Boolean()将表达式结果转为布尔值,如果表达式为真执行第一个代码块内语句,如果为假执行第二个代码块内语句。

    只有一条语句的时候代码块不是必需的,出于维护性考虑我们建议添加。

    对于括号里的表达式,转化为布尔类型的原理如下表:

    |类型|结果|

    |undefined|false|

    |null|false|

    |boolean|直接判断|

    |number|+0,-0或NaN为false,其余为true|

    |string|空字符串为false,其余为false|

    |object|true|

    if语句可以单独使用,也可以和多个else连续使用:

    ```

    if(a > 2){

        // statement

    }

    if( a == 1){

    }else if(a == 2){

    }else if(a == 3 ){

    }else{

    }

    ```

    a==b的判断

    使用==的时候,javascript会帮我们做类型转换,原理如下:

    如果两个值类型相同,则执行严格相等的运算;

    如果两个值的类型不同:

    如果一个是null,一个是undefined,那么相等;

    如果一个是数字,一个是字符串,先将字符串转为数字,然后比较;

    如果一个值是true/false则将其转为1/0比较;

    如果一个值是对象,一个是数字或字符串,则尝试使用valueOf和toString转换后比较;

    其它就不相等了。

    相关文章

      网友评论

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

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