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

JavaScript 比较运算符

JavaScript 比较运算符


一、基础比较运算符类型

运算符 名称 示例 核心特性
== 宽松相等 "5" == 5 → true 隐式类型转换
=== 严格相等 "5" === 5 → false 类型+值双重校验
!= 宽松不等 null != 0 → true 等效于 !(a == b)
!== 严格不等 5 !== "5" → true 类型或值任一不同即成立
> 大于 "10" > 2 → true 字符串转数字比较
< 小于 "a" < "b" → true 按Unicode码点逐位比较
>= 大于等于 5 >= "5" → true 包含相等条件的复合判断
<= 小于等于 NaN <= 1 → false NaN参与比较永远返回false

二、严格相等(===)与宽松相等(==)的深层规则

1. 类型转换优先级(== 的隐式转换逻辑)

  • 数值优先原则:数值优先原则是 JavaScript 在宽松相等比较(==)和关系比较(>、< 等)中的隐式类型转换规则,其核心逻辑为:当操作数据类型不同时,优先将非数值类型转换为数值(Number)后再进行比较。
  • 原始类型混合比较:
"5" == 5       // true(字符串→Number(5))  
true == 1      // true(Boolean→Number(1))  
false == 0     // true(Boolean→Number(0))  
null == 0      // false(null不转换,直接判定不等)  
  • 对象与原始类型比较

相关文章:

  • 第二十章:类型属性的重载_《C++ Templates》notes
  • 【Go 】Go 语言中的 channel介绍
  • K8S学习之基础四十四:k8s中部署Kibana
  • vue3 ts 注册全局组件
  • N列股票收盘价为起点的马科维茨(Markowitz)均值—方差理论
  • 低配电脑畅玩《怪物猎人:荒野》,ToDesk云电脑优化从30帧到144帧?
  • 【C++】 --- 类和对象(中)
  • Java UDP聊天室搭建指南
  • Vulnhub Momentum系列靶机合集
  • 施耐德 Unity Pro 项目配置
  • 【SG90舵机】arduino uno控制SG90舵机
  • GraphMLP: A Graph MLP-Like Architecture for 3D Human Pose Estimation
  • 各类容器技术深度解析:容器全解
  • 【设计模式】外观模式
  • WSL2 与双系统的对比
  • Java之反射
  • C++语法之模板函数和模板类
  • 理解操作系统(一)冯诺依曼结构和什么是操作系统
  • 第六章 | Solidity 函数与可见性修饰符全面讲解
  • Dataset和Dataloader
  • 上任后首访,德国总理与法国总统举行会晤
  • 马上评|演出服“穿过就退货”的闹剧不该一再重演
  • 央行行长:债券市场“科技板”准备工作基本就绪,目前近百家市场机构计划发行超三千亿科技创新债
  • 缅甸国防军继续延长临时停火期限至5月31日
  • 体坛联播|米兰逆转热那亚豪取3连胜,阿诺德官宣离开利物浦
  • 多地政府机关食堂迎来大客流,重庆荣昌区委书记给厨师们鼓劲