談談JS中“相等”與“全等”的區別

在javascript中,判斷兩個變量是否相等的操作符有兩組,他們分別是:相等和不相等,全等和不全等。他們的區別就是相等和不相等是先轉換然後比較,全等和不全等不轉換隻比較。

相等與不相等

相等是用兩個等號表示,即“==”,而不相等則用歎號與等號表示,即“!=”,這兩個操作符都會先轉換操作數,然後在進行比較。比如:

var a = ("123" == 123);
alert(a);//結果爲true

爲什麼結果是true呢?因爲在比較之前操作數被轉換了,即字符串“123”被轉換成了數字123,所以會返回true。此外,如果操作數是布爾值,則true會被轉換成1,而false則會被轉換成0。不相等(“!=”)同理。

全等與不全等

除了不轉換操作數之外,全等和相等沒有區別,全等使用三個等號表示,即“===”,而不全等用一個歎號和兩個等號表示,即“!==”。例子如下:

var a = ("123" === 123);
alert(a)//結果爲false

var b = ("123" !== 123);
alert(b)//結果爲true

因爲上面兩個比較值一個類型是字符串,另一個是數字,而全等不進行轉換,所以a返回false,b返回true。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章