JS中怎麼判斷兩個對象是否相等?

我在另外一篇文章中,介紹了相等運算符,告訴了你們通常類型值的比較,感興趣的能夠看👉文章連接,在那篇文章中,我沒有講對象比較,今天我單獨給你們講一講對象的相等
說到對象相等,你們可能會認爲兩個對象的值徹底同樣,毫無疑問確定相等,那咱們試試看segmentfault

var obj1 = {a:1}
var obj2 = {a:1}

你們以爲obj1 等於obj2嗎?
結果可能有些出乎意料數組

obj1 == obj2 //結果爲false

這是爲何呢?

這是由於檢查兩個對象變量是否相同時,其實比較的是指向對象的引用,而且僅當兩個引用指向的是同一個對象時,他們纔是相等的code

var obj1 = {a:1}
var obj2 = obj1
obj1 == obj2 //結果爲true

再舉個例子,數組也是對象的一種對象

var a = [0,1,2]
var b = [0,1,2]
a == b //false
var b = a
a == b //true

因此緊緊記住,當兩個引用指向同一個對象時,對象纔是相等的get

最後 🙌

好啦,以上就是我本次分享的所有內容啦,若是你以爲個人文章對你有一丟丟幫助,那麼請不要吝嗇你的贊👍哦,阿門~變量

相關文章
相關標籤/搜索