JavaScript 的變數型別主要分為兩大類,,它們儲存的是記憶體位址的參考:
原始型別(Primitive Type)和物件型別(Object Type)。
物件型別包含 object(物件)、array(陣列)、function(函式)等。
變數儲存的不是資料本身,而是資料在記憶體中的地址 (Address) 或指向 (Reference)。
當你把一個物件/陣列變數賦值給另一個變數時,兩個變數現在都指向同一個記憶體位置。
儲存方式:變數槽位 (Address 1) >>儲存 物件地址 (Address 2)。
賦值行為:複製 物件地址。
基本型別包含string (字串)、number (數字)、boolean (布林值)、null、undefined 等。
這些型別在賦值時是傳值 (Pass by Value),變數儲存的是資料本身,把指定的資料複製給儲存的變數。
儲存方式:變數槽位 (Address 1) >>直接儲存值
賦值行為:複製 值 本身。
ex:let a = 7;
意思是,在記憶體當中找到一個空位置(假設這記憶體位置為g3021),給他一個名字叫做a,a就是代表這個記憶體位址(g3021),並把7這個值給a的意思。