javascript 中==与===
2024-08-26 10:49:00
1.==相等运算符
1.1如果操作数具有相同的类型,则判断其等同性,如果两个数的值相等,则返回true(相等),否则返回 false (不相等)
1.2如果两个操作数类型不同,则按如下规则:
- null与undefined相等
- 其中一个是数字,另一个是字符串,则将字符串转为数字,在做比较
- 其中一个是true,先转化成1(false则转化为0) 在做比较
- 如果一个值是对象,另一个是数字或字符串,则将对象转化为原始值(通过toString()或valueOf()方法)
- 其他情况则直接返回false
2.===等同运算符
2.1如果操作数类型不同,则不进行值得判断,直接返回false
2.2如果操作数类型相同则按如下规则:
- 都是数字时,如果值相同则两者等同(例外:NaN与其本身不相等),否则不等同
- 都是字符串,如果串的值相等则等同,否则不等同
- 都是布尔值,且其值均为true/false,则等同,否则不等同
- 如果两个操作数引用同一对象,则两者完全等同,否则不等同
- 如果两个操作数均为null/undefined 则等同,否则不等同
最新文章
- CSS定位的三种机制:普通流、绝对定位和浮动
- Linux环境下使用gcc编译,gdb反汇编C语言程序
- Dev GridControl数据导出格式问题
- [C++]C++中的运行时类型检测
- php中设置时区
- 关于mule中使用jdbc时报No Suitable Driver found错误的问题
- 声明式RESTful客户端在asp.net core中的应用
- git如何设置ssh密钥
- conda安装cv2库
- Storm原理
- vimrc同步文档
- (5) 电商场景下的常见业务SQL处理
- Shell脚本 | 性能测试之启动流量
- spring aop的配置
- Ball---hdu5821(排序)
- 敏捷:什么是用户故事(User Story)
- CentOS部署Kubernetes1.13集群-1(使用kubeadm安装K8S)
- VB6 写文件
- centos7.3挂在移动硬盘(亲测)
- Golang&;Python测试thrift
热门文章
- BZOJ1710: [Usaco2007 Open]Cheappal 廉价回文
- js82:CSS的Style,image的重定位,getElementById,getElementsByTagName,location.href
- C#路径,文件,目录,I/O常见操作汇总
- jQuery操作元素的class属性
- eclipse 修改Java代码 不用重新启动tomcat
- Maven使用tomcat7-maven-plugin插件run时出现错误: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component
- Go --- 设计模式(工厂模式)
- css 滤镜之Gradient
- APache POI emaple ()
- 快看Sample代码,速学Swift语言(2)-基础介绍 快看Sample代码,速学Swift语言(1)-语法速览