摘要:同一類的復合類型值兩個復合類型對象數組函數的數據比較時,不是比較它們的值是否相等,而是比較它們是否指向同一個對象。寬松相等雙等號將執行類型轉換原始類型的值原始類型的數據會轉換成數值類型再進行比較。
事件這塊知識點雖然是老生長談的,但對于我來說多多整理,多多感悟,溫故知新,每次看看這塊都有不同的收獲.(在這里我不會長篇大論,只會挑重點;具體的小伙伴們自行查找)JavaScript提供三種不同的值比較操作
參考:https://developer.mozilla.org...
嚴格相等 "==="
寬松相等 "=="
Object,is(es6d的新特性)
嚴格相等三等號將進行相同的比較,而不進行類型轉換 (如果類型不同, 只是總會返回 false ) ,
如果兩個值都是 number類型,當兩個都不是 NaN,并且數值相同, 或是兩個值分別為 +0 和 -0 時,兩個值被認為是全等的
(1)不同類型值
如果兩個值的類型不同,直接返回false
(2)同一類的原始類型值
同一類型的原始類型的值(數值、字符串、布爾值)比較時,值相同就返回true,值不同就返回false。
(3)同一類的復合類型值
兩個復合類型(對象、數組、函數)的數據比較時,不是比較它們的值是否相等,而是比較它們是否指向同一個對象。寬松相等
雙等號將執行類型轉換
(1)原始類型的值
原始類型的數據會轉換成數值類型再進行比較。字符串和布爾值都會轉換成數值
(2)對象與原始類型值比較
對象(這里指廣義的對象,包括數值和函數)與原始類型的值比較時,對象轉化成原始類型的值,再進行比較
(3)undefined和null
undefined和null與其他類型的值比較時,結果都為false,它們互相比較時結果為true
(4)其他類型和布爾之間的相等比較
會首先把boolean 強制轉換成 .toNumber();Object.is
的行為方式與三等號相同, 但是對于NaN和-0和+0進行特殊處理,對比圖
所以最后兩個不相同,
Object.is(NaN,NaN)將為 true
Object.is(+0,-0)將為 false
最后 ,請小伙伴們多看看這張"判斷圖片"
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/107444.html
摘要:同一類的復合類型值兩個復合類型對象數組函數的數據比較時,不是比較它們的值是否相等,而是比較它們是否指向同一個對象。寬松相等雙等號將執行類型轉換原始類型的值原始類型的數據會轉換成數值類型再進行比較。 事件這塊知識點雖然是老生長談的,但對于我來說多多整理,多多感悟,溫故知新,每次看看這塊都有不同的收獲.(在這里我不會長篇大論,只會挑重點;具體的小伙伴們自行查找)參考:https://dev...
摘要:同一類的復合類型值兩個復合類型對象數組函數的數據比較時,不是比較它們的值是否相等,而是比較它們是否指向同一個對象。寬松相等雙等號將執行類型轉換原始類型的值原始類型的數據會轉換成數值類型再進行比較。 事件這塊知識點雖然是老生長談的,但對于我來說多多整理,多多感悟,溫故知新,每次看看這塊都有不同的收獲.(在這里我不會長篇大論,只會挑重點;具體的小伙伴們自行查找)參考:https://dev...
摘要:通常在轉換不同數據類型時,相等和不相等會遵循以下規則若有一個操作數是布爾值,則比較前會將布爾值轉換為數值轉為,轉為。 本文是 重溫基礎 系列文章的第十八篇。今日感受:優化自己的代碼,也是很愉快的事情。 系列目錄: 【復習資料】ES6/ES7/ES8/ES9資料整理(個人整理) 【重溫基礎】1-14篇 【重溫基礎】15.JS對象介紹 【重溫基礎】16.JSON對象介紹 【重溫基礎...
摘要:而之后事件循環一直會去遍歷任務隊列,一旦有任務放入就會放入主線程中執行。任務隊列所謂任務是返回的一個個通知,讓主線程在讀取任務隊列的時候得知這個異步任務已經完成,下一步該執行這個任務的回調函數了。 javascript單線程 瀏覽器端,復雜的UI環境會限制多線程語言的開發。例如,一個線程在操作一個DOM元素時,另一個線程需要去刪除DOM元素,這個之間就需要進行狀態的同步,何況前端可能不...
閱讀 2411·2021-11-25 09:43
閱讀 1246·2021-11-24 09:39
閱讀 742·2021-11-23 09:51
閱讀 2382·2021-09-07 10:18
閱讀 1842·2021-09-01 11:39
閱讀 2776·2019-08-30 15:52
閱讀 2589·2019-08-30 14:21
閱讀 2850·2019-08-29 16:57