1. 程式人生 > 其它 >JavaScript 簡單型別與複雜型別

JavaScript 簡單型別與複雜型別

一、簡單型別與複雜型別

1、簡單型別又叫做基本資料型別或者值型別,複雜型別又叫做引用型別。

2、值型別:簡單資料型別/基本資料型別,在儲存時變數中儲存的是值本身,因此叫做值型別

string,number,boolean,undefined,null

3、引用型別:複雜資料型別,在儲存時變數中儲存的僅僅是地址(引用),因此叫做引用資料型別

通過 new 關鍵字建立的物件(系統物件、自定義物件),如Object、Array、Date等

二、堆和棧

堆疊空間分配區別:

1、棧(作業系統):由作業系統自動分配釋放存放函式的引數值、區域性變數的值等。其操作方式類似於資料結構中的棧;

簡單資料型別存放到棧裡面

2、堆(作業系統):儲存複雜型別(物件),一般由程式設計師分配釋放,若程式設計師不釋放,由垃圾回收機制回收。

複雜資料型別存放到堆裡面

注意:JavaScript中沒有堆疊的概念,通過堆疊的方式,可以讓大家更容易理解程式碼的一些執行方式,便於將來學習其他語言。

三、簡單型別的記憶體分配

1、值型別(簡單資料型別):string,number、boolean、undefined、null

2、值型別變數的資料直接存放在變數(棧空間)中

 

 

 

 

(1) 簡單資料型別 是存放在棧裡面 裡面直接開闢一個空間存放的是值 (2)複雜資料型別 首先在棧裡面存放地址 十六進位制表示 然後這個地址指向堆裡面的資料