这个问题已经在这里有了答案 :
JavaScript比较中应使用哪个等于运算符(== vs ===)? (49个答案)
5个月前关闭。
==和之间的区别是什么===?我也看过!=和!==运算符。还有更多这样的运营商吗?
==
===
!=
!==
===并且!==是严格的比较运算符:
JavaScript具有严格和类型转换相等性比较。为了strict相等,要比较的对象必须具有相同的类型,并且: 当两个字符串在相同位置具有相同的字符序列,相同的长度和相同的字符时,它们是严格相等的。 当两个数字在数值上相等时(具有相同的数值)严格相等。NaN不等于,包括NaN。正零和负零彼此相等。 如果两个布尔操作数都为true或均为false,则它们严格相等。 如果两个对象引用相同,则它们严格相等Object。 * Null和Undefined类型是==(但不是===)。[即(Null==Undefined)是,true但(Null===Undefined)是false]
JavaScript具有严格和类型转换相等性比较。为了strict相等,要比较的对象必须具有相同的类型,并且:
strict
NaN
Object
Null
Undefined
Null==Undefined
true
Null===Undefined
false