一个等号是赋值操作,==先转换类型再比较,===先判断类型,如果不是同一类型直接为false。

=== 判断规则

如果类型不同,就[不相等] 
如果两个都是数值,并且是同一个值,那么[相等];(!例外)的是,如果其中至少一个是NaN,那么[不相等]。(判断一个值是否是NaN,只能用isNaN()来判断) 
如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等]。 
如果两个值都是true,或者都是false,那么[相等]。 
如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。 
如果两个值都是null,或者都是undefined,那么[相等]。 
== 判断规则:

如果两个值类型相同,进行 === 比较。 
如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较: 
如果一个是null、一个是undefined,那么[相等]。 
如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。 
如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。 
如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。js核 心内置类,会尝试valueOf先于toString;例外的是Date,Date利用的是toString转换。非js核心的对象,令说(比较麻烦,我 也不大懂) 
任何其他组合,都[不相等]。

alert(0 == “”); // true
alert(0 == false); // true
alert(“” == false); // true

alert(0 === “”); // false
alert(0 === false); // false
alert(“” === false); // false

===用来进行严格的比较判断

alert(1 == “1″); // true

alert(1 === “1″); // false

转载来自:http://www.jsjtt.com/webkaifa/javaScript/37.html

js 一个等号= 二个等号== 三个等号=== 的区别相关推荐

  1. margin带一个、二个、三个、四个参数不同的含义。

    margin: 20px;(上.下.左.右各20px.) margin: 20px 40px;(上.下20px:左.右40px.) margin: 20px 40px 60px;(上20px:左.右4 ...

  2. 程序员面试中一面、二面、三面有什么区别?

    很多公司面试都分一面.二面.三面甚至更多,大家可能会好奇,为什么要面这么多面,每一面又有啥区别呢? 首先我来回答下为什么要这么多面,最核心的是最后3点: 如果光是一个人面,担心会看走眼: 面试通过最后 ...

  3. 一面、二面、三面有什么区别?

    很多公司面试都分一面.二面.三面甚至更多,大家可能会好奇,为什么要面这么多面,每一面又有啥区别呢? 首先我来回答下为什么要这么多面,最核心的是最后3点: 如果光是一个人面,担心会看走眼: 面试通过最后 ...

  4. 一个等号(=)和三个等号和两个等号的区别(“===”和“==”)

    一个等号(=)表示把1赋值给变量啊 ==:称为等值符,当等号两边的类型相同时,直接比较值是否相等,若不相同,则先转化为类型相同的值,再进行比较: ===:称为(恒等于)等同符,当两边值的类型相同时,直 ...

  5. 计算机考研是数一,2019考研常识:数一、数二、数三的区别

    2019考研常识:数一.数二.数三的区别 摘要:有提前准备的考研er已经开始考研数学的复习了,但还不知道考研数学的数一.数二.数三到底有什么区别,考研帮小编这篇分享,就从多个角度 作者 佚名 次阅读 ...

  6. 数一、数二、数三的区别

    摘要:有提前准备的考研er已经开始考研数学的复习了,但还不知道考研数学的数一.数二.数三到底有什么区别,考研帮小编这篇分享,就从多个角度分析了数一.数二.数三的区别哦~ 考研数学从卷种上来看分为数学一 ...

  7. JS/JavaScript中两个等号 == 和 三个等号 === 的区别

    JavaScript中两个等号 == 和 三个等号 === 的区别 一.概念 == 和 ===  (1)  "=="叫做相等运算符,"==="叫做严格运算符. ...

  8. js中两个等号“==“与三个等号“===“有何不同

    一.1个等号"=": 首先一个等号"=",大家都知道,一般在编程语言中是用来做赋值操作的,也叫赋值运算符,即把等号右边的值,赋值给左边声明的变量. 例如:在js ...

  9. js两个等号和三个等号_js中两个等号(==)和三个等号(===)的区别

    js中两个等号(==)和三个等号(===)的区别: 1. "=="表示:equality -> 等同 的意思,"=="使用两个等号时,如果两边值的类型不同 ...

  10. js中两个等号和三个等号区别?

    == equality 等同,=== identity 恒等.==, 两边值类型不同的时候,要先进行类型转换,再比较. ==,不做类型转换,类型不同的一定不等.下面分别说明: 先说 ===,这个比较简 ...

最新文章

  1. 为iPhone6 设计自适应布局(一)
  2. CentOS基础命令大全
  3. altium designer PCB 屏蔽DRC报错
  4. 不使用vue-cli来创建项目
  5. 爬取CSDN最新月份所写的文章的最高阅读量文章(以及统计整个月所写的文章的阅读量的累积和)
  6. Linux的vim编辑器中的翻页命令
  7. java 多进程多线程_Java并发编程原理与实战三:多线程与多进程的联系以及上下文切换所导致资源浪费问题...
  8. java保存文件filedialog保存路径 文件名_FileDialog文件名过滤问题
  9. python毕业设计作品基于django框架校园网站系统毕设成品(6)开题答辩PPT
  10. 华硕固件Linux-arm,AC86UASUS固件交叉编译的问题
  11. 密歇根州立大学联合京东提出深度强化学习算法DeepPage用于分页推荐
  12. C# 重新启动计算机
  13. Yolov5笔记--检测bilibili下载好的视频
  14. VBA完整学习笔记1-39集(共60集)
  15. 商品期货基本面研究纲要
  16. 学生党matlab哪个版本最好用,学生党福音!仅4个GPU打造自己的BigGAN,PyTorch代码已开源...
  17. 迅雷9远程服务器,迅雷9【搞定方式】
  18. 活动、节假日、促销等营销方式的因果效应评估——方法模型篇(二)
  19. 使用GeoGebra来进行项目辅助开发
  20. a标签 rel=“external nofollow“ 用法

热门文章

  1. ES源码学习之--Get API的实现逻辑
  2. python和revit_Python 與 Revit
  3. Vue生命周期,Vue中在哪个生命周期阶段调用异步请求最佳
  4. 天天拍车:2018年度个人卖车大数据报告
  5. MySQL 8.0 OCP (1Z0-908)有中文考试了
  6. 【LeetCode Python实现】908. 最小差值 I(简单)
  7. Vargant - 复数VM共用相同的私有key
  8. R语言关联规则及其可视化(Foodmart数据)
  9. 程序员找工作,应该怎么应对面试官?
  10. 8-设计模式之行为型模式二(状态模式、观察者模式、中介者模式)