JavaScript 提供了严格(===, !==
) 和类型转换(==, !=
) 相等比较。严格运算符考虑变量的类型,而非严格运算符根据变量的值进行类型校正/转换。严格的运算符遵循以下不同类型的条件,
NaN 不等于任何东西,包括 NaN。
正零和负零彼此相等。
===
不相等,但与 ==
相等。即, null===undefined --> false
但 null==undefined --> true
作者:海拥
链接:https://www.nowcoder.com/discuss/991813#1
来源:牛客网
0 == false // true
0 === false // false
1 == "1" // true
1 === "1" // false
null == undefined // true
null === undefined // false
'0' == false // true
'0' === false // false
[]==[] or []===[] //false, 引用内存中的不同对象
{}=={} or {}==={} //false, 引用内存中的不同对象