• ===、==、Object.is 基本包装类型


    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    // == 原始值的比较,不同数据类型比较时会类型转换(字符串——》数值, Boolean——>0|1,以及valueOf、toString)
    undefined
    const obj1={username:‘Ares_Wang’}
    const obj= {username:‘Ares_Wang’}
    const obj2=obj1;//对象是引用类型,此处赋值,只是把指向赋给obj2
    undefined
    objobj1
    false
    obj1
    obj2
    true
    //若比较都是对象(非值类型),只有两个操作数引用都一个对象才返回true。
    undefined
    nullundefined
    true
    //不同类型比较
    undefined
    12
    ’12’ // 字符串和数值比较时,字符串会隐式转换为数值
    true
    true1 //boolean和数值比较时,Boolean 会隐式转换 true->1 false——>0
    true
    true
    ’1’ // 字符串->数值, true->1
    true
    true==‘3’ // 字符串-数值 ’3‘——>3 true——>1 31 false
    false
    Number(1)1 //对象和数值 对象会先用valueOf 隐式转换成原始值 Number(1)——>1 Number(1) 是包装器
    true
    String(‘123’)
    ‘123’ //对象与字符串 对象会先用tostring 隐式转成原始值 String(’xxxx‘) 也是包装器
    true
    //基本包装类型 生命周期,包装之后,立马销毁。
    undefined
    let s=‘Ares-Wang’
    undefined
    var s1=new String(s)
    var s2=String(s)
    undefined
    s1
    =s2
    false
    s1=s
    false
    s2
    =s
    true
    s1.x=‘5’
    ‘5’
    s2.x=‘5’ //S2 基本包装类型 赋值完,立马销毁了
    ‘5’
    s1.x
    ‘5’
    s2.x=‘5’ //S2 基本包装类型 赋值完,立马销毁了
    ‘5’
    s2.x
    undefined

    //=== 严格模式比较 比较包含数据类型 和值
    undefined
    //=== 比较包含数据类型 所以 不同数据类型 肯定不相等的,引用类型只有引用同一个对象才返回true
    undefined
    12===‘12’
    false
    1=true
    false
    null
    =null
    true
    undefined=null
    false
    undefined
    =undefined
    true
    +0=0
    true
    NaN
    =NaN // == === 结果一样的 都返回false
    false
    //Object.is()和三等运算符很像,但是仍然存在一些差别,比如说对于NaN,对于+0和-0之间的比较。
    undefined
    Object.is(NaN,NaN)
    true
    Object.is(null,null)
    true
    Object.is(0,+0)
    true
    Object.is(null,undefined)
    false
    Object.is(undefined,undefined)
    true

  • 相关阅读:
    信息系统项目管理师(2022年)—— 重点内容:项目进度管理(6)
    中国招标投标协会李小林一行到访北京筑龙座谈交流
    做自媒体如何在一个月内赚得三万?
    【论文精读3】MVSNet系列论文详解-P-MVSNet
    kubernetes 集群安装-准备篇
    力扣32. 最长有效括号
    PFL-MoE:基于混合专家的个性联邦学习
    matlab图像仿射变换
    英伟达GDP游戏芯片研究待续
    SpringBoot集成MyBatis-Plus + MyBatis-Plus代码生成器[MP系列] - 第490篇
  • 原文地址:https://blog.csdn.net/u013400314/article/details/125557684