javascript中==和===号的区别

作者: Darren 分类: javascript 发布时间: 2019-05-26 12:09
	console.log(false=="0");
	console.log(false==="0");
	        

第一个输出”true”,第二输出”false”

原因如下:

==:如果类型不同。可以转换一次类型再进行比较
===:如果类型不同。直接为false
操作数 1 == 操作数 2 操作数1 === 操作数2
==转换规则
(1)如果操作数1和操作数2类型相同,则进行===比较
(2)如果操作数1和操作数2类型不同,一个是字符型一个是数值型,则把字符型转换成数值
型再进行比较
(3)如果一个是null 一个是undefined 值为true
===转换规则
(1)如果操作数1和操作数2类型不同,则直接返回false
(2)如果两个都是数值并且值相等,那么返回结果为true 如果一个是NaN 一个是number 则类型为true 值为false
(3)如果都是字符型,且每个字符的位置的字母都一样,返回结果为true
(4)如果都是true或者都为false,返回结果为true
(5)如果引用同一个函数或者同一个对象,值为true 否则为false
(6)如果一个是null 一个是undefined 值为false

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注