当前位置: 首页 > 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

对象比较的是引用地址

http://www.xdnf.cn/news/519139.html

相关文章:

  • LeetCode 394. 字符串解码详解:Java栈实现与逐行解析
  • 第5章 监控与回归测试:日志收集 · 代码覆盖率 · 静态分析 · 质量门
  • Python爬虫实战:通过PyExecJS库实现逆向解密
  • 院士方复全数学命题证明采用预期理由和循环论证以及类比的错误方法
  • web页面布局基础
  • 【动态规划】路径问题
  • STM32八股【9】-----volatile关键字
  • vim - v
  • Python数据可视化 - Pyecharts绘图示例
  • 中级统计师-统计学基础知识-第三章 参数估计
  • 【Linux】命令行参数和环境变量
  • 【PyQt5实战】五大对话框控件详解:从文件选择到消息弹窗
  • 【typenum】 11 私有模块(private.rs)
  • 【Redis实战篇】Redis消息队列
  • 10.9 LangChain LCEL革命:43%性能提升+声明式语法,AI开发效率飙升实战指南
  • 深入理解递归算法:Go语言实现指南
  • C44-练习
  • 全基因组关联研究揭示了脑淋巴活动的机制
  • Rstudio换皮:自定义彩虹括号与缩进线
  • Python Requests库完全指南:从入门到精通
  • 《C语言中的传值调用与传址调用》
  • 多头自注意力机制—Transformer模型的并行特征捕获引擎
  • 如何畅通需求收集渠道,获取用户反馈?
  • c++多线程debug
  • 【android bluetooth 协议分析 01】【HCI 层介绍 6】【WriteLeHostSupport命令介绍】
  • 2.1.2
  • WaterStamp —— 一个实用的网页水印生成器开发记
  • 系统启动时开启选择内核菜单
  • ctf 基础
  • tauri2项目动态添加 Sidecar可行性方案(运行时配置)