关于恒等于(===)和非恒等于(!==)


Posted in Javascript onAugust 20, 2007

在看Ext的源代码的时,遇到"==="和"!=="的写法,一时不解,就在群里资讯了下,才知道它们各自表示的含义。
呵呵,看来有网络还真是方便:)
引用 
·恒等于(===):检查两个操作数是否一样,也就是检查没有进行数据类型转换的操作数的值是否相等。
·非恒等于(!==):检查两个操作数的值在没进行数据转换前是否不一样。
以下为讨论聊天记录节选:

枫岩 09:24:01
if(index !== -1){
...
}

表示什么意思?有谁知道? 
路上行人 09:26:32
===恒等于.. 
路上行人 09:26:41
!==不恒等于.. 
枫岩 09:33:58
呵呵,根据路上行人说的“恒等于”搜索了下:

3、使用恒等于和非恒等于操作符(===和!===)
1)严格比较两个变量的值是否相等,不会做任何转换的工作,如 2==="2"是不成立的,返回false 
枫岩 09:34:13
<script type="text/javascript">
<!--
alert(2=="2");
alert(2==="2");
alert(2!=="2");
//-->
</script> 
枫岩 09:36:32
嘿嘿,这个详细点:
·恒等于(===):检查两个操作数是否一样,也就是检查没有进行数据类型转换的操作数的值是否相等。
·非恒等于(!==):检查两个操作数的值在没进行数据转换前是否不一样。
路上行人 09:39:41
if (index!==1)是什么意思...枫岩?? 
枫岩 09:43:04
index!==1
相当于:
!(index===1) 
枫岩 09:43:10
应该是这样的 
枫岩 09:43:18
我试试 
枫岩 09:44:07
<script type="text/javascript">
<!--
var a = (2!=="2");
var b = !(2==="2");
alert(a === b);
//-->
</script> 
枫岩 09:44:40
2==="2" 的比较还要求数据类型一样 
枫岩 09:44:45
才返回真
Z 09:49:30
===是这样的
Z 09:49:44
If the two values have different types, they are not identical.
Z 09:51:52
==应该是把两个数都转为CHAR然后比较值
===是先比较类型是否相同 
枫岩 09:54:42
测试了下,确实如此 
<script type="text/javascript">
<!--
var o1 = {a:"a"};
var o2 = o1.toString();
alert(o1==o2);
alert(o1===o2);
//-->
</script> 

Javascript 相关文章推荐
文本框input聚焦失焦样式实现代码
Oct 12 Javascript
js动态控制table的tr、td增加及删除的具体实现
Apr 30 Javascript
JavaScript基础语法、dom操作树及document对象
Dec 02 Javascript
Js+php实现异步拖拽上传文件
Jun 23 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
Aug 10 Javascript
JavaScript实现点击单元格改变背景色的方法
Feb 12 Javascript
AngularJs 60分钟入门基础教程
Apr 03 Javascript
JS简单生成随机数(随机密码)的方法
May 11 Javascript
对于input 框限定输入值为浮点型的js代码
Sep 25 Javascript
vue+axios实现文件下载及vue中使用axios的实例
Sep 21 Javascript
前端Vue项目详解--初始化及导航栏
Jun 24 Javascript
vue新建项目并配置标准路由过程解析
Dec 09 Javascript
图片格式的JavaScript和CSS速查手册
Aug 20 #Javascript
javascript 一个自定义长度的文本自动换行的函数
Aug 19 #Javascript
js类中获取外部函数名的方法
Aug 19 #Javascript
写了一个layout,拖动条连贯,内容区可为iframe
Aug 19 #Javascript
转自Jquery官方 jQuery1.1.3发布,速度提升800%,体积保持20K
Aug 19 #Javascript
Code: write(s,d) 输出连续字符串
Aug 19 #Javascript
js实现运行代码需要刷新的解决方法
Aug 18 #Javascript
You might like
PHP实现多文件上传的方法
2015/07/08 PHP
详解PHP错误日志的获取方法
2015/07/20 PHP
解决laravel id非自增 模型取回为0 的问题
2019/10/11 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
如何在Laravel之外使用illuminate组件详解
2020/09/20 PHP
基于jquery的鼠标拖动效果代码
2012/05/30 Javascript
jquery和javascript中如何将一元素的内容赋给另一元素
2014/01/09 Javascript
实现图片预加载的三大方法及优缺点分析
2014/11/19 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
jQuery插件实现带圆点的焦点图片轮播切换
2016/01/18 Javascript
Javascript 普通函数和构造函数的区别
2016/11/05 Javascript
nodejs个人博客开发第四步 数据模型
2017/04/12 NodeJs
vue引入swiper插件的使用实例
2017/07/19 Javascript
vue利用better-scroll实现轮播图与页面滚动详解
2017/10/20 Javascript
Vue路由管理器Vue-router的使用方法详解
2020/02/05 Javascript
antd form表单数据回显操作
2020/11/02 Javascript
[01:44]Ti10举办地公布
2019/08/25 DOTA
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
python实现获取序列中最小的几个元素
2014/09/25 Python
python比较两个列表是否相等的方法
2015/07/28 Python
python队列通信:rabbitMQ的使用(实例讲解)
2017/12/22 Python
python实现在pandas.DataFrame添加一行
2018/04/04 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
Python中的引用知识点总结
2019/05/20 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
python 实现return返回多个值
2019/11/19 Python
pytorch nn.Conv2d()中的padding以及输出大小方式
2020/01/10 Python
Python Scrapy图片爬取原理及代码实例
2020/06/12 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
采购文员岗位职责
2013/11/20 职场文书
社会保险接收函
2014/01/12 职场文书
2014年员工工作总结范文
2014/11/18 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
Linux安装Nginx步骤详解
2021/03/31 Servers
详解Python requests模块
2021/06/21 Python
Mybatis-Plus进阶分页与乐观锁插件及通用枚举和多数据源详解
2022/03/21 Java/Android