JavaScript里面==和===区别是什么?

如题所述

==之比较“转化成同一类型后的值”看“值”是否相等
例如 "1"==1 成立

===如果类型不同,其结果就是不等
例如"1"===1 不成立

详细的区别:
1、对于string,number等基础类型,==和===是有区别的
1)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,===如果类型不同,其结果就是不等
2)同类型比较,直接进行“值”比较,两者结果一样
2、对于Array,Object等高级类型,==和===是没有区别的
进行“指针地址”比较
3、基础类型与高级类型,==和===是有区别的
1)对于==,将高级转化为基础类型,进行“值”比较
2)因为类型不同,===结果为false
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-21
== 只是判断值是否相等
=== 判断类型是否相等

if (1 == true) //条件为真
if( 1 === true) //条件为假
第2个回答  2017-10-25
上面答案不够清晰,再补充一下:
==只要求值相等,类型不一致的话会首先把右侧自动转为左侧类型。
===要求值和类型都相等。
相似回答