平時在複習JS基礎知識時,常常會遇到JS數據類型、基礎數據類型、內置對象、包裝類型對象,檢測數據類型時,用到的typeof
值,感受都差很少,可是又有差別。今天特意整理下,方便理解。前端
JS數據類型
基礎數據類型和引用數據類型
- JS數據類型分爲 基礎數據類型 和 引用數據類型
- 基礎數據類型又分爲
undefined
null
boolean
number
string
- 引用數據類型即
object
爲何編程語言要有數據類型 概念
一句話歸納的話,就是JS數據類型,是對外的,是面向JS編譯器的,定義編譯器對相應類型的處理方式
;
具體參考 爲何編程語言的都要定義數據類型編程
JS內置對象
JS內置對象 包含 Boolean
String
Number
Array
Function
Date
Math
Object
RegExp
Error
Global
segmentfault
包裝類型對象
JS內置對象包含包裝類型對象,包裝類型對象 指的是 Boolean
String
Number
三個內置對象編程語言
爲何會有JS內置對象 概念
一句話歸納的話,就是JS內置對象,是對內的,是指這個語言自帶的一些對象,供開發者使用,這些對象提供了一些經常使用的或是最基本而必要的功能
。post
typeof值
typeof
是用來判斷數據類型的,其中它的值有undefined
boolean
number
string
function
symbol
object
;spa
JS內置對象和JS數據類型關係
JS數據類型是對外的,面對編譯器;JS內置對象是對內的,平常編程與咱們打交道最多的,實際上是JS內置對象。至於包裝數據類型對象的特色,能夠參考 輕鬆理解JS基本包裝對象,打個比方就是:code
JS就像一個國家,平時對外交流(與JS編譯器交流),由6位副總統(JS基本數據類型,undefined null boolean number string object)去操做。
其中,undefined副總統、null副總統年老體衰,平時掌管的國家事務很少。
object副總統能力比較強,下設了11位部長(JS內置對象),平時國內治理(前端平常開發)由這些部長執行。
另外,boolean副總統、number副總統、string副總統,平時施政時,必須由Boolean部長、Number部長、String部長三位部長(包裝類型對象)輔助,命令才能正常實行。
固然,Boolean部長、Number部長、String部長三位部長也能夠單獨執行,繞過三位副總統。對象
typeof
值與JS數據類型關係
對比下圖,便可知typeof
值 相較於 JS基礎數據類型 少null多function
blog