• 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 

  • 相关阅读:
    java编译错误No enclosing instance of type TestFrame is accessible. Must qualify the allocation with an enclosing instance of type TestFrame (e.g. x.new A(
    java 2中创建线程方法
    动态规划基本思想
    关于eclipse编译一个工程多个main函数
    java Gui初识
    Eclipse中java项目的打包
    java 播放声音
    把资源文件夹导入到eclipse中
    Java建立JProgressBar
    How to grant permissions to a custom assembly that is referenced in a report in Reporting Services
  • 原文地址:https://www.cnblogs.com/myBlog-ahao/p/11081714.html
Copyright © 2020-2023  润新知