您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“JS有哪些開發(fā)小技巧”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“JS有哪些開發(fā)小技巧”吧!
1. typeof 誤解
聲明一個(gè)變量 var a,typeof a 常被誤解是求變量 a 的類型,其實(shí)是求變量 a 中「當(dāng)前值的類型」。如圖所示,當(dāng) a 的值發(fā)生改變時(shí),typeof a 的結(jié)果也在發(fā)生變化。
2. 真假難辨
js 中的「假值」包含 ""、0、-0、NaN,、null、undefined、false,記住空字符串也是「假值」,而空數(shù)組 [] 和空對(duì)象 {} 卻不是假值。通過下面代碼可以驗(yàn)證一下:
3. == 與 ===
這段代碼的打印結(jié)果是啥?結(jié)果是 a == c,看到這個(gè)結(jié)果我難以置信。== 和 === 的區(qū)別在于,== 檢查「值相等」,而 === 檢查「值和類型」相等。但這么說并不精確。正確的說法是,== 檢查的是允許類型轉(zhuǎn)換的情況下值的相等性,而 === 檢查不允許類型轉(zhuǎn)換的情況下值的相等性;因此,=== 經(jīng)常被稱為“嚴(yán)格相等”。
4. 類型之間比較
上面的打印結(jié)果是啥?結(jié)果打印的是”我該咋辦“。原因是這樣的, b 在 < 和 > 比較過程中,b 被轉(zhuǎn)換成了無效數(shù)字 NaN,「規(guī)范設(shè)定 NaN 即不大于也不小于任何值」。== 比較結(jié)果為假是因?yàn)闊o論 42 == NaN 還是 "42" == "suyan" 都不可能為真。
5. 自己實(shí)現(xiàn)一個(gè) isNaN 函數(shù)
這里利用了 NaN 值的一個(gè)特性,即 NaN 是整個(gè)語言中唯一和自身不相等的值。因此,NaN 是使得 x != x 為真的唯一值。
6. IIFE
別被上面的函數(shù)搞暈,換個(gè)姿勢(shì):
到此,相信大家對(duì)“JS有哪些開發(fā)小技巧”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。