JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别


Posted in Javascript onMay 31, 2016

一、JavaScript"=="的作用

1.当==两边的内容是字符串时,则比较字符串的内容是否相等。
2.当==两边的内容是数字时,则比较数字的大小是否相等。
3.当==两边的内容是对象或者是对象的函数属性时,则比较内存地址是否相等。

二、==和===的区别

==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase。

举例说明:

<script type="text/javascript">
alert("\"\"==true的结果是:"+(""==true));
alert("\"\"===true的结果是:"+(""===true));
alert("\"\"==的结果是:"+(""==));
alert("\"\"===的结果是:"+(""===));
</script>

"1" == true类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为 1 == 1;此时,"==" 左右两边的类型都为数值型,比较成功!

"1" === true 左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;

"1" === 1 左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;

运行结果:

JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别

总结:

==和===的区别:"==" 只要求值相等; "===" 要求值和类型都相等

下面在给大家详细说明下JavaScript里面三个等号和两个等号的区别

== equality 等同,=== identity 恒等。

==, 两边值类型不同的时候,要先进行类型转换,再比较。

==,不做类型转换,类型不同的一定不等。

下面分别说明:

先说 ===,这个比较简单。

下面的规则用来判断两个值是否===相等:

1、如果类型不同,就[不相等]

2、如果两个都是数值,并且是同一个值,那么[相等];(!例外)的是,如果其中至少一个是NaN,那么[不相等]。(判断一个值是否是NaN,只能用isNaN()来判断)

3、如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等]。

4、如果两个值都是true,或者都是false,那么[相等]。

5、如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。

6、如果两个值都是null,或者都是undefined,那么[相等]。

再说 ==,根据以下规则:

1、如果两个值类型相同,进行 === 比较。

2、如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较:

a、如果一个是null、一个是undefined,那么[相等]。

b、如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。

c、如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。

d、如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。 js核心内置类,会尝试valueOf先于toString;例外的是Date,Date利用的是toString转换。非js核心的对象,

令说(比较麻 烦,我也不大懂)

e、任何其他组合,都[不相等]。

举例:

"1" == true
类型不等,true会先转换成数值 1,现在变成 "1" == 1,再把"1"转换成 1,比较 1 == 1, 相等。

= 赋值运算符
== 等于
=== 严格等于

例:

var a = 3;
var b = "3";

a==b 返回 true
a===b 返回 false

因为a,b的类型不一样
===用来进行严格的比较判断

Javascript 相关文章推荐
JQuery优缺点分析说明
Jun 09 Javascript
javaScript如何生成xmlhttp
Dec 16 Javascript
使用jquery实现仿百度自动补全特效
Jul 23 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
Mar 29 Javascript
第四篇Bootstrap网格系统偏移列和嵌套列
Jun 21 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
Mar 29 Javascript
浅谈在node.js进入文件目录的问题
May 13 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
Jul 23 Javascript
原生JS实现图片懒加载之页面性能优化
Apr 26 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
May 08 Javascript
通过实例了解JS 连续赋值
Sep 24 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
JavaScript知识点总结(四)之逻辑OR运算符详解
May 31 #Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
May 31 #Javascript
jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
May 31 #Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
May 31 #Javascript
TinyMCE汉化及本地上传图片功能实例详解
May 31 #Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
May 31 #Javascript
BootStrap创建响应式导航条实例代码
May 31 #Javascript
You might like
山进SANGEAN ATS-909X电路分析
2021/03/02 无线电
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
PHP封装的数据库保存session功能类
2016/07/11 PHP
浅析php如何实现App常用的秒发功能
2016/08/03 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
Yii 框架控制器创建使用及控制器响应操作示例
2019/10/14 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
JS小功能(setInterval实现图片效果显示时间)实例代码
2013/11/28 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
jQuery中hide()方法用法实例
2014/12/24 Javascript
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
2015/11/09 Javascript
javascript基础知识分享之类与函数化
2016/02/13 Javascript
JavaScript代码性能优化总结(推荐)
2016/05/16 Javascript
JavaScript必知必会(十) call apply bind的用法说明
2016/06/08 Javascript
JavaScript获取中英文混合字符串长度的方法示例
2017/02/04 Javascript
关于vue-resource报错450的解决方案
2017/07/24 Javascript
使用Angular CLI生成 Angular 5项目教程详解
2018/03/18 Javascript
浅谈JavaScript 代码整洁之道
2018/10/23 Javascript
layUI实现列表查询功能
2019/07/27 Javascript
JS实现动态倒计时功能(天数、时、分、秒)
2019/12/12 Javascript
python和pyqt实现360的CLable控件
2014/02/21 Python
python中文分词教程之前向最大正向匹配算法详解
2017/11/02 Python
python面向对象入门教程之从代码复用开始(一)
2018/12/11 Python
利用rest framework搭建Django API过程解析
2019/08/31 Python
pytorch的梯度计算以及backward方法详解
2020/01/10 Python
150行Python代码实现带界面的数独游戏
2020/04/04 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
python中的split、rsplit、splitlines用法说明
2020/10/23 Python
租租车:国际租车、美国租车、欧洲租车、特价预订国外租车(中文服务)
2018/03/28 全球购物
庆祝教师节标语
2014/10/09 职场文书
单位实习工作证明怎么写
2014/11/02 职场文书
2016春季运动会前导词
2015/11/25 职场文书
python使用openpyxl库读写Excel表格的方法(增删改查操作)
2021/05/02 Python