最近發現一個好東西,掘金小冊,以爲裏面的東西挺不錯的,準備仔細閱讀一下,提高下本身。函數
記錄一下,隨便加深點兒印象,主要內容源自於小冊。spa
原始類型code
原始類型也成爲基本數據類型對象
boolean
null
undefined
number
string
symbol
原始類型存儲的都是值,是沒有函數能夠調用的,好比 undefined.toString();
blog
此時你確定會有疑問,這不對呀,明明 '1'.toString()
是能夠使用的。其實在這種狀況下,'1'
已經不是原始類型了,而是被強制轉換成了 String
類型也就是對象類型,因此能夠調用 toString
函數。string
除了會在必要的狀況下強轉類型之外,原始類型還有一些坑。object
其中 JS 的 number
類型是浮點類型的,在使用中會遇到某些 Bug,好比 0.1 + 0.2 !== 0.3
。string
類型是不可變的,不管你在 string
類型上調用何種方法,都不會對值有改變。數據類型
另外對於 null
來講,不少人會認爲他是個對象類型,其實這是錯誤的。雖然 typeof null
會輸出 object
,可是這只是 JS 存在的一個悠久 Bug。方法
對於null,這個特殊性,之前還真不知道,看了小冊後才瞭解的。im
另外 null == nudefined //true
null和undefined之間的相等操做符(==)老是返回true, 不過要注意的是,這個操做符處於比較的目的會轉換操做數。