首頁  >  文章  >  web前端  >  詳解js中==與===的區別

詳解js中==與===的區別

高洛峰
高洛峰原創
2017-01-10 11:41:281281瀏覽

為了減少概念混淆,應該把=稱作(得到或賦值),==稱作(相等),===稱作(嚴格相等)

相同點:

它們兩個運算符都允許任意類型的的運算元,如果運算元相等,回傳true,否則回傳false

不同:

==:運算子稱作相等,用來偵測兩個運算元是否相等,這裡的相等定義的非常寬鬆,可以允許進行型別轉換

===:用來偵測兩個運算元是否嚴格相等

1、對於string,number等基礎型,==和===是有區別的

不同型別間比較,= =之比較「轉換成相同類型後的值」看「值」是否相等,===如果型別不同,其結果就是不等

同型態比較,直接進行「值」比較,兩者結果一樣

2.對於Array,Object等高階類型,==和===是沒有區別的

3、基礎類型與進階類型,==和===是有區別的

對於==,將高階轉換為基礎類型,進行「值」比較

因為類型不同,===結果為false

以上就是本文的全部內容,希望本文的內容對大家的學習或工作能帶來一定的幫助,同時也希望多多支援PHP中文網!

更多詳解js中==與===的區別相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn