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 

  • 相关阅读:
    Modal的跳转方法为什么会显得那么奇怪
    新博客介绍
    Swift弹窗
    Java 定时任务之Quartz
    40个Java集合面试问题和答案
    elasticsearch 学习笔记
    Mac使用指南
    平时学习遇到问题及解决方法
    session和request的区别
    框架中web.xml中配置文件解析
  • 原文地址:https://www.cnblogs.com/myBlog-ahao/p/11081714.html
Copyright © 2011-2022 走看看