摘要:之后會在文章末尾注明出處。所謂的原始表達式,就是表達式的最小單位不再包含任何其他的表達式。那么對它們進行研究就顯得很有意義了。首先我們編寫一個測試函數文章素材出處
此篇文章不是100%的原創,是看了很多別人的文章,然后自己做的一個總結,所以里面會用到一些原文章里面的例子,或者圖片。因為我覺得原作者寫的例子很好,我自己想不出更好的,所以就借用了。之后會在文章末尾注明出處。
在JavaScript的世界里,條件語句的表達式(expression),可以是我們常見的關系表達式(1 < 2),可以是邏輯表達式(true || false),也可以是原始表達式(primary expression)。
if(expression){ statement; }
所謂的原始表達式,就是表達式的最小單位-不再包含任何其他的表達式。例如:
1.00 //一個數字 ‘hello’ //一個字符串 true //布爾值 null //JavaScript的保留關鍵字null this //JavaScript的保留關鍵字this {} //一個對象
類似于以上的這些原始表達式,它們沒有顯示地告訴你當作為條件語句的表達式時,到底是true還是false,但是在日常的代碼編寫中,我們又時常會用到。那么對它們進行研究就顯得很有意義了。
上圖是一個很全面的總結,接下來我們就一些平常不太注意到或者容易理解錯的點用代碼進行測試一下。首先我們編寫一個測試函數
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/
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/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()=>{ ...
摘要:傳送門本文會介紹淺拷貝的實現原理,然后咱們試著實現一個淺拷貝。返回的對象就是目標對象。使用轉成對象,并保存為,最后返回這個對象。 一、前言 之前在前面一篇學習了賦值,淺拷貝和深拷貝。介紹了這三者的相關知識和區別。 傳送門:https://www.mwcxs.top/page/59... 本文會介紹淺拷貝Object.assign()的實現原理,然后咱們試著實現一個淺拷貝。 二、淺拷貝O...
摘要:在作用域頂部聲明變量,避免變量聲明和賦值引起的相關問題。分號語句結束一定要加分號類型轉換在語句的開始執行類型轉換字符串對數字使用并且總是帶上類型轉換的基數布爾值命名約定避免單個字符名,讓你的變量名有描述意義。 原文:https://github.com/airbnb/javascript JavaScript規范 內容列表 類型 對象 數組 字符串 函數 屬性 變量 條件表達式和等號...
摘要:另外還有一種數據類型叫做布爾類型。布爾類型布爾類型是計算機中最基本的類型,它是計算機二進制世界的體現,一切都是和。中的布爾類型只有兩種值和。 計算機的本質就是計算,在其內部是0和1的比特位的變化,對外表現就是數據的變化。那么,計算機都能處理什么數據呢?本質上,數據都是以字節(Byte)存儲的,表現上看,它們就是整數、浮點數和字符串等。Python的基本數據類型也不外乎于此。 整數和浮點...
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...
閱讀 1006·2019-08-30 15:55
閱讀 3446·2019-08-30 13:10
閱讀 1274·2019-08-29 18:45
閱讀 2352·2019-08-29 16:25
閱讀 2113·2019-08-29 15:13
閱讀 2427·2019-08-29 11:29
閱讀 559·2019-08-26 17:34
閱讀 1490·2019-08-26 13:57