javascript运算符之==和===
2024-08-26 01:44:59
1、== :判断两个数是否相等,在比较之前会自动转化类型再做比较。为确定两个运算数是否相等,这两个运算符都会进行类型转换。
执行类型转换的规则如下:
1、如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。
2、如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。
3、如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。
4、如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。
在比较时,该运算符还遵守下列规则:
1、值 null 和 undefined 相等。
2、在检查相等性时,不能把 null 和 undefined 转换成其他值。
3、如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。
4、如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。
重要提示:即使两个数都是 NaN,等号仍然返回 false,因为根据规则,NaN 不等于 NaN
2、=== :全等号由三个等号表示(===),只有在无需类型转换运算数就相等的情况下,才返回 true。
3、非全等号由感叹号加两个等号(!==)表示,只有在无需类型转换运算数不相等的情况下,才返回 true。
最新文章
- R语言介绍
- linux多线程下载工具mwget
- 关于bootstrap--导航栏
- LINQ 用法,返回结果不是在定义时取值,而是在调用时实时取值,有意思!
- PATH menu
- electron 使用 node-ffi C++ 动态链接库(DLL)
- Jqurey 得到url参数 getUrlParam
- [LeetCode] 97. Interleaving String_ Hard tag: Dynamic Programming
- Echarts的使用方法
- SRM477
- ASP.NET车辆管理系统
- 【WP8】WP8调用官方API使用LED灯
- HTML5 Canvas ( 画一个五角星 ) lineJoin miterLimit
- 训练赛第一场A题 (ZOJ 2313)
- php -- PHP在linux上执行外部命令,system(),exec(),shell_exec()
- emacs之配置7,tabbar插件
- multipart/form-data post 方法提交表单,后台获取不到数据
- [转载]DirectX SDK (June 2010)安装错误S1023,解决方法
- postman 断言
- Java API 之 Annotation功能