摘要:之后會在文章末尾注明出處。所謂的原始表達(dá)式,就是表達(dá)式的最小單位不再包含任何其他的表達(dá)式。那么對它們進(jìn)行研究就顯得很有意義了。首先我們編寫一個測試函數(shù)文章素材出處
此篇文章不是100%的原創(chuàng),是看了很多別人的文章,然后自己做的一個總結(jié),所以里面會用到一些原文章里面的例子,或者圖片。因?yàn)槲矣X得原作者寫的例子很好,我自己想不出更好的,所以就借用了。之后會在文章末尾注明出處。
在JavaScript的世界里,條件語句的表達(dá)式(expression),可以是我們常見的關(guān)系表達(dá)式(1 < 2),可以是邏輯表達(dá)式(true || false),也可以是原始表達(dá)式(primary expression)。
if(expression){ statement; }
所謂的原始表達(dá)式,就是表達(dá)式的最小單位-不再包含任何其他的表達(dá)式。例如:
1.00 //一個數(shù)字 ‘hello’ //一個字符串 true //布爾值 null //JavaScript的保留關(guān)鍵字null this //JavaScript的保留關(guān)鍵字this {} //一個對象
類似于以上的這些原始表達(dá)式,它們沒有顯示地告訴你當(dāng)作為條件語句的表達(dá)式時,到底是true還是false,但是在日常的代碼編寫中,我們又時常會用到。那么對它們進(jìn)行研究就顯得很有意義了。
上圖是一個很全面的總結(jié),接下來我們就一些平常不太注意到或者容易理解錯的點(diǎn)用代碼進(jìn)行測試一下。首先我們編寫一個測試函數(shù)
function isTrue(exp){ return exp? "truthey": "falsey"; } 1: isTrue("") // falsey (empty string) 2: isTrue(new String("")) // truthey (an object) 3: isTrue(NaN) //falsey (NaN) 4: isTrue(new Number(NaN)) //truthey (an object) 5: isTrue([]) //truthey (array is object, even it is empty) 6: isTrue([0]) //truthey (An array with initialized is an object for sure)
PS: 文章素材出處:https://javascriptweblog.wordpress.com/2011/02/07/truth-equality-and-javascript/
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/79806.html
How JavaScript works? JavaScript is a single-threaded language that can be non-blocking. showImg(https://segmentfault.com/img/bVbiqTf?w=1678&h=852); JavaScript Engine For the code below: const f()=>{ ...
摘要:傳送門本文會介紹淺拷貝的實(shí)現(xiàn)原理,然后咱們試著實(shí)現(xiàn)一個淺拷貝。返回的對象就是目標(biāo)對象。使用轉(zhuǎn)成對象,并保存為,最后返回這個對象。 一、前言 之前在前面一篇學(xué)習(xí)了賦值,淺拷貝和深拷貝。介紹了這三者的相關(guān)知識和區(qū)別。 傳送門:https://www.mwcxs.top/page/59... 本文會介紹淺拷貝Object.assign()的實(shí)現(xiàn)原理,然后咱們試著實(shí)現(xiàn)一個淺拷貝。 二、淺拷貝O...
摘要:在作用域頂部聲明變量,避免變量聲明和賦值引起的相關(guān)問題。分號語句結(jié)束一定要加分號類型轉(zhuǎn)換在語句的開始執(zhí)行類型轉(zhuǎn)換字符串對數(shù)字使用并且總是帶上類型轉(zhuǎn)換的基數(shù)布爾值命名約定避免單個字符名,讓你的變量名有描述意義。 原文:https://github.com/airbnb/javascript JavaScript規(guī)范 內(nèi)容列表 類型 對象 數(shù)組 字符串 函數(shù) 屬性 變量 條件表達(dá)式和等號...
摘要:另外還有一種數(shù)據(jù)類型叫做布爾類型。布爾類型布爾類型是計算機(jī)中最基本的類型,它是計算機(jī)二進(jìn)制世界的體現(xiàn),一切都是和。中的布爾類型只有兩種值和。 計算機(jī)的本質(zhì)就是計算,在其內(nèi)部是0和1的比特位的變化,對外表現(xiàn)就是數(shù)據(jù)的變化。那么,計算機(jī)都能處理什么數(shù)據(jù)呢?本質(zhì)上,數(shù)據(jù)都是以字節(jié)(Byte)存儲的,表現(xiàn)上看,它們就是整數(shù)、浮點(diǎn)數(shù)和字符串等。Python的基本數(shù)據(jù)類型也不外乎于此。 整數(shù)和浮點(diǎn)...
ES7 includes() method Array.prototype.includes(target) determines whether an array includes a certain element, returning True or False as appropriate. String.prototype.includes(targetString) deter...
閱讀 1014·2019-08-30 15:55
閱讀 3456·2019-08-30 13:10
閱讀 1282·2019-08-29 18:45
閱讀 2363·2019-08-29 16:25
閱讀 2123·2019-08-29 15:13
閱讀 2435·2019-08-29 11:29
閱讀 566·2019-08-26 17:34
閱讀 1503·2019-08-26 13:57