zoukankan      html  css  js  c++  java
  • ECMAScript---布尔类型、null、undefined详解

    布尔类型中 至只有 true和false

    在开发中它是非常重要的两个值,尤其是在条件判断中

    如何把其他类型转换为布尔类型?

    1、Boolean()

    Boolean(1); //true
    Boolean(100); //true
    Boolean(-122);//true
    Boolean(NaN);//false
    Boolean(0); //false

    2、! :取反  先把其他数据类型转换为布尔类型,再取反

    ! '字符串' //false
    !' ' //false
    !0 //true
    !1 //false

    3、!! :取两次反,等价于没有取反,直接转换为布尔类型

    !!null; //false
    !!undefined; //false
    !!0 ; //false
    !!' '; //false
    !!NaN ;//false
    !![] ; //true
    !! { }; //true

    规律:在js中,只有 0 、NaN 、空字符串、null 、undefined 这个5个值转换成布尔为false,其余都转换为true

    -----------------------------------------------------

    null && undefined详解:

    都是代表空或者没有的意思

    null:空对象指针

    undefined:未定义,只有js中有

    null和undefined区别:

    转换为数字后的不同,null转换数字是0,undefined转换数字是NaN

    null一般是意料之中的没有,暂时没有,使用时一般先手动赋值为null,后面使用的时候再次会赋值

    undefined 不是人为手动控制的,大部分都是浏览器自主为空,后面可以赋值也可以不复制

    var num=null; 
    num=12;
    
    var m; //此时m的值浏览器分配的是 undefined 

    总结:其实null和undefined使用上没有太多区别,就好比 div和p的使用,只是语义化不同,使用方式约定俗成

  • 相关阅读:
    20190425-快速排序
    ExtJS合同管理信息系统源码
    2013年12月12日16Aspx源码发布详细
    大型商业手机进销存管理系统源码
    大管家固定资产管理系统源码
    地平线开源网站源码Deepsoon v1.2.3
    发票管理系统(Extjs)源码
    国讯通用OA协同办公系统源码
    物流管理系统源码
    2013年10月16Aspx源码发布详情
  • 原文地址:https://www.cnblogs.com/xinxinxiangrong7/p/11424153.html
Copyright © 2011-2022 走看看