JS中資料型別、內建物件、包裝型別物件、typeof關係

weixin_33766168發表於2019-02-25

平時在複習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

包裝型別物件

JS內建物件包含包裝型別物件,包裝型別物件 指的是 Boolean String Number三個內建物件

為什麼會有JS內建物件 概念

一句話概括的話,就是JS內建物件,是對內的,是指這個語言自帶的一些物件,供開發者使用,這些物件提供了一些常用的或是最基本而必要的功能

typeof值

typeof是用來判斷資料型別的,其中它的值有undefined boolean number string function symbol object;

JS內建物件和JS資料型別關係

JS資料型別是對外的,面對編譯器;JS內建物件是對內的,日常程式設計與我們打交道最多的,其實是JS內建物件。至於包裝資料型別物件的特點,可以參考 輕鬆理解JS基本包裝物件,打個比方就是:

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

clipboard.png

相關文章