当前位置: 首页 > news >正文

等于和绝对等于的区别

1. ==(等于)

  • 特点:比较时会自动进行类型转换(隐式转换),尝试将两边的值转为相同类型后再比较。
  • 规则
    • 如果类型相同,直接比较值。
    • 如果类型不同,按以下规则转换:
      • 数字 vs 字符串:字符串转数字。
      • 布尔值 vs 非布尔值:布尔值转数字(true1false0)。
      • 对象 vs 基本类型:调用对象的 valueOf()toString() 转为基本类型。
      • null vs undefined:视为相等。

2. ===(绝对等于/严格等于)

  • 特点:不进行类型转换,直接比较类型和值。
  • 规则
    • 如果类型不同,直接返回 false
    • 如果类型相同,再比较值。

场景

==(等于)结果

===(绝对等于)结果

原因说明

5 == '5'

true

false

== 会转换类型为数字再比较

0 == false

true

false

false 转为 0

'' == 0

true

false

空字符串转为 0

null == undefined

true

false

特殊规则

NaN == NaN

false

false

NaN 不等于任何值,包括自身

{} == {}

false

false

对象比较的是引用地址

相关文章:

  • CHAIN-OF-TABLE: 推理链中的演化表格用于表格理解
  • 智慧园区数据大脑管理平台整体解决方案
  • USB学习【11】STM32 USB初始化过程详解
  • 有源晶振与无源晶振 旁路模式与非旁路模式 深度剖析
  • 2009-2025计算机408统考真题及解析
  • 【数据结构与算法】ArrayList 与顺序表的实现
  • 济南国网数字化培训班学习笔记-第三组-2-电力通信光缆网认知
  • 20-HAL库
  • 加密芯片法(一)ATSHA204A 特性理解
  • 一次页面假死分析
  • FreeRTOS “探究任务调度机制魅力”
  • 三、关系数据库
  • 垂直智能体:企业AI落地的正确打开方式
  • 仿腾讯会议——房间界面用户设置
  • STM32F10X-中文参考手册2
  • 构建一个“湖仓一体”(Data Lakehouse)系统
  • 八股碎碎念01——HashMap原理
  • C++高级用法--绑定器和函数对象
  • C++跨平台开发经验与解决方案
  • 备战!全国青少年信息素养大赛图形化编程-省赛——求最小公倍数
  • 著名文学评论家、原伊犁师范学院院长吴孝成逝世
  • 新华每日电讯:博物馆正以可亲可近替代“高冷范儿”
  • 见微知沪|科学既要勇攀高峰,又要放低身段
  • 国内规模最大女子赛艇官方赛事在沪启航,中外41支队伍逐浪
  • “80后”萍乡市安源区区长邱伟,拟任县(区)委书记
  • 外交部:反对美方人士发表不负责任谬论