最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • js中的==与===

    正文概述 掘金(是个李子)   2021-07-23   499

    我们都知道js中判断两个数是否相等有两个操作符=======是不严格相等,在比较过程中会先将比较数进行强制类型转化,在进行值比较,而===是严格相等,它不会对数值的类型进行强制转换,所以理解为===会对数进行双重校验,先比较类型,再比较值。如果两个数的类型都不相等,那么这两个数肯定就不相等啦~

    对于===这种严格相等比较的话大家基本上不会有什么异议,但是==真的是傻傻分不清啊!!!

    现在整理一份便于比较的小tips,请查收~

    首先js中有个比较特殊的数---NAN,这个数与任意数相比较都为false,hhhh,甚至与自身做比较时也是false

    NaN == "0"  //false
    NaN == null  //false
    NaN == undefined  //false
    NaN == []  //false
    NaN == {}  //false
    NaN == 0  //false
    NaN == false  //false
    

    哈哈哈哈,感觉是不是还挺省事,就special,那我们怎么判断一个值是否为NaN呢,一般通过isNaN()函数判断的

    js中还有两个特殊的数,null和undefined。这两个值互相等且自身等,其余情况与谁相比都不相等。

    null == null  //true
    null == undefined  //true
    undefined == null  //true 
    undefined == undefined  //true
    

    其余的类型都是会隐式转化成对应的值来做比较的,比较规则如下表:

    被比较数B Number String Boolean Object 比较数A Number A === B A === ToNumber( B ) A === ToNumber( B ) A == ToPrimitive( B ) String ToNumber( A ) === B ToNumber( A ) === ToNumber( B ) ToNumber( A ) === ToNumber( B ) ToPrimitive( B ) == A Boolean ToNumber( A ) === B ToNumber( A ) === ToNumber( B ) ToNumber( A ) === ToNumber( B ) ToNumber( A ) == ToPrimitive( B ) Object ToPrimitive( A ) == B ToPrimitive( A ) == B ToPrimitive( A ) == ToPrimitive( B ) A === B

    在上面的表格中,ToNumber(A) 尝试在比较前将参数 A 转换为数字。ToPrimitive(A)通过尝试调用 A 的A.toString() 和 A.valueOf() 方法,将参数 A 转换为原始值(Primitive)。


    起源地下载网 » js中的==与===

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元