zoukankan      html  css  js  c++  java
  • JS中的双等和全等号比较机制

    JavaScript中的"==" 和 "===" 的用法:

      "=="判断相等的隐式转换机制

        1. 判断是否有NaN(not a Number 非数 是计算机科学中数值数据类型的一种,表示未定义 或者不可表示的值)

        判断等式两边是否有NaN数,如果有,一律判定为false

        2. 是否有Boolean值

          2.1 一边为Boolean类型,一边为表达式

            判断表达式的布尔值与Boolean进行比较

          2.2 一边为Number类型,一边为Boolean类型

            将Boolean类型转换为Number,false = 0,true = 1,然后进行比较

        3.null和undefined

          遇到nul或者undefined,不进行数据类型转换,二者之间的比较,返回true

        4.  有一边是字符串

           4.1 另一边同样是String

            直接对等式两边的值进行比较

           4.2 另一边为Number类型

            将String转换为Number类型进行比较

          4.3 另一边是Boolean类型

            同时将String类型和Boolean类型转换为Number类型,然后进行比较 (false = 0,true = 1)

          4.4 另一边是对象或者数组

            则需要调用toString()方法或者valueOf()方法转换为简单类型,然后进行比较

            对象转换为简单类型时会有限调用valueOf()方法,如果能与简单类型进行直接比较,则不再调用toString()方法,否则调用toString()方法

      "===":比较的是数据类型+值

          两者必须完全相等才为true

    摘自:https://blog.csdn.net/qq_37530031/article/details/78317823 

  • 相关阅读:
    [2021.8集训Day10/JZOJ.3410]【GDOI2014模拟】Tree
    [2021.8集训Day10/JZOJ.3441]【NOIP2013模拟】小喵喵的新家
    [模板]模拟退火 / 洛谷 P1337 [JSOI2004]平衡点
    P1600 [NOIP2016 提高组] 天天爱跑步
    P4556 [Vani有约会]雨天的尾巴 /【模板】线段树合并
    selenium的三种等待
    python中socket、socketio、flask-socketio、WebSocket的区别与联系
    (十二)python3 迭代器
    (十一)python3 encode()和decode()
    (十)python3 生成器
  • 原文地址:https://www.cnblogs.com/myBlog-ahao/p/11081714.html
Copyright © 2011-2022 走看看