zoukankan      html  css  js  c++  java
  • js基础之if判断

    本人菜鸡,最近在学js

    js中,if判断增加了

    if(变量名){
    }

    这种方式的判断,会在括号内进行一些隐秘的类型转换,从而导致一些问题

    function a(k) {
        if (k) {
            console.log('成功');
        } else {
            console.log('失败');
        }
    }
    let d = 0;
    a(d)

    以上代码执行的结果竟然是

     这就令我大吃一惊,经过仔细查看js基础后,发现了原理,原来js的基本数据类型中的boolean转换成数字类型的时候是true对应1,false对应0,反过来,数字转成boolean类型的时候也是同样的,于是在if后面的括号中就进行了一个类型转换,将Number类型的值转换成了boolean,对应的0就变成了false,所以上面输出的结果就是‘失败’,反之,如果传入1的话,就是成功,如下图所示

  • 相关阅读:
    NXOpen 创建方体block代码
    Mysql---2 DDL DML DQL DCL
    Mysql数据库--1数据库操作
    FFmpeg
    Servlet Web
    Java web Springboot
    Java 网络
    Java 注解 反射
    Java 线程状态
    Java Lambda
  • 原文地址:https://www.cnblogs.com/thesun/p/14211938.html
Copyright © 2011-2022 走看看