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


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 相关文章推荐
在javascript将NodeList作为Array数组处理的方法
Jul 09 Javascript
使用jQuery.fn自定义jQuery翻页插件
Jan 20 Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
Apr 10 Javascript
仿当当网淘宝网等主流电子商务网站商品分类导航菜单
Sep 25 Javascript
值得分享的Bootstrap Table使用教程
Nov 23 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
Apr 22 Javascript
老生常谈ES6中的类
Jul 31 Javascript
JS 使用 window对象的print方法实现分页打印功能
May 16 Javascript
Vue中的组件及路由使用实例代码详解
May 22 Javascript
javascript实现fetch请求返回的统一拦截
Dec 22 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
Apr 08 Javascript
js瀑布流布局的实现
Jun 28 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
Windows7下PHP开发环境安装配置图文方法
2010/05/20 PHP
php代码中使用换行及(\n或\r\n和br)的应用
2013/02/02 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
thinkPHP实现的联动菜单功能详解
2017/05/05 PHP
PHP开发的微信现金红包功能示例
2017/06/29 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
表单(FORM)的一些实用效果代码
2007/03/25 Javascript
window.dialogArguments 使用说明
2011/04/11 Javascript
JavaScript中的细节分析
2012/06/30 Javascript
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
jQuery prototype冲突的2种解决方法(附demo示例下载)
2016/01/21 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
微信小程序入门教程
2016/11/18 Javascript
Reactjs实现通用分页组件的实例代码
2017/01/19 Javascript
js CSS3实现卡牌旋转切换效果
2017/07/04 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
javascript实现动态时钟的启动和停止
2020/07/29 Javascript
vue实现商城秒杀倒计时功能
2019/12/12 Javascript
使用python 获取进程pid号的方法
2014/03/10 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
使用Python如何测试InnoDB与MyISAM的读写性能
2018/09/18 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
Python实现把类当做字典来访问
2019/12/16 Python
Tensorflow 定义变量,函数,数值计算等名字的更新方式
2020/02/10 Python
智利最大的网上商店:Linio智利
2016/11/24 全球购物
Myprotein芬兰官网:欧洲第一运动营养品牌
2019/05/05 全球购物
瑞士男士时尚网上商店:Babista
2020/05/14 全球购物
小学国庆节活动方案
2014/02/11 职场文书
竞选大队委员演讲稿
2014/04/28 职场文书
社区服务活动小结
2014/07/08 职场文书
给客户的检讨书
2014/12/21 职场文书
使用Python获取字典键对应值的方法
2022/04/26 Python
Mysql InnoDB 的内存逻辑架构
2022/05/06 MySQL
mysql查看表结构的三种方法总结
2022/07/07 MySQL