1.相等 == 和不相等 !=
先轉(zhuǎn)換操作數(shù)再比較相等性
在轉(zhuǎn)換不同的數(shù)據(jù)類型時,相等和不相等遵循以下規(guī)則:
1.1 如果有一個操作數(shù)是布爾值,則在比較相等性前先將其轉(zhuǎn)換為數(shù)值---false轉(zhuǎn)換為0,true轉(zhuǎn)換為1;
1.2 如果一個操作數(shù)是字符串,另一個操作數(shù)是數(shù)值,則在比較相等性前將字符串轉(zhuǎn)換為數(shù)值
1.3 如果一個操作數(shù)是對象昂,另一個不是,則調(diào)用對象的valueOf()方法,用得到的基本類型值按照前面的規(guī)則比較
1.4 null和undefined是相等的
1.5 在比較相等性之前,不能將null和undefined轉(zhuǎn)換為其他任何值
1.6 如果有一個操作符是NaN,則相等操作符返回false,不相等操作符返回true;即使兩個操作數(shù)都是NaN,也一樣
1.7 如果兩個操作數(shù)都是對象,則比較它們是否指向同一個對象
表達(dá)式 | 值 |
null == undefined | true |
"NaN" == NaN | false |
5 == NaN | false |
NaN == NaN | false |
NaN != NaN | true |
5 =="5" | true |
false == 0 | true |
true == 1 | true |
true == 2 | flase |
undefined == 0 | false |
null == 0 | false |
2.全等=== 和全不等 !==
兩個操作數(shù)在未經(jīng)轉(zhuǎn)換的情況下相等返回true,不相等返回false;
undefined == null;//true
undefined === null;// false
以上這篇JS之相等操作符詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答