== 與 ===的區別

    ==用於一般比較(值相等),在比較的時候可以轉換數據類型

    ===用於嚴格比較(值相等+類型相等),嚴格比較,只要類型不匹配就返回flase。

1 == “1” // true
1 == true // true  右邊true進行類型轉換,可轉爲“1”

1 === "1" // false 左側類型是number,右側類型是string
1 === true // false 左側類型是number,右側類型是Boolean
*引用類型比較*

    不同的對象,其引用值其實並不相等,即在內存中的不同的地址單元中

    把兩個對象進行比較,得到的結果都是不相等的,對於引用類型來說,默認是比較兩個對象引用的地址,每個對象的引用有自己唯一的地址,所以,是不相等。

var m = {a: 1, b: 2};
var n = {a: 1, b: 2};
var o = {a: 1, b: 2, c: 3};
m == n // false
m === n // false
m == o // false
m === o // false


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