JavaScript中双等号(==)的比较机制

2019-07-15  本文已影响0人  流浪的三鮮餡

ECMAScript中提供两组操作符:相等不相等——先转换再比较,全等不全等——仅比较而不转换。

相等和不相等

ECMAScript中的相等操作符由两个等于号(==)表示,如果两个操作数相等,则返回true。而不相等操作符由叹号后跟等于号(!=)表示,如果两个操作数不相等,则返回true。这两个操作符都会先转换操作数(通常称为强制转型),然后再比较它们的相等性。

在转换不同的数据类型时,相等和不相等操作符遵循下列基本规则:

下表列出了一些特殊情况及比较结果:

表达式 表达式
null == undefined true true == 1 true
"NaN" == NaN false true == 2 false
5 == NaN false undefined == 0 false
NaN == NaN false null = 0 false
NaN != NaN true "5" == 5 true
false == 0 true

全等和不全等

全等操作符由3个等于号(===)表示,它只在两个操作数未经转换就相等的情况下返回true。这里不做阐述,有兴趣的朋友可阅读其他相关资料

上一篇 下一篇

猜你喜欢

热点阅读