JavaScript 數(shù)據(jù)類型

JavaScript 中的數(shù)據(jù)類型分為基本類型和引用類型?;绢愋褪侵笚?nèi)存中的簡(jiǎn)單數(shù)據(jù)段,而引用類型是指那些保存在堆內(nèi)存中的對(duì)象。

基本類型,有 undefined、null、string、 boolean、number,在 es6 中還新增了一個(gè)數(shù)據(jù)類型 symbol,表示獨(dú)一無(wú)二的值。這些類型在內(nèi)存中,占有固定大小的空間,它們的值保存在棧空間,我們通過(guò)按值來(lái)訪問(wèn)。數(shù)據(jù)在棧內(nèi)存中的存儲(chǔ)、使用方式,類似于數(shù)據(jù)結(jié)構(gòu)中的堆棧數(shù)據(jù)結(jié)構(gòu),遵循先進(jìn)后出的原則。

引用類型,即對(duì)象。棧內(nèi)存中存放地址,指向堆內(nèi)存中的對(duì)象,是按引用來(lái)訪問(wèn)的。如下圖,棧內(nèi)存中存放的是對(duì)象的訪問(wèn)地址,而在堆內(nèi)存中為對(duì)象的值分配空間。對(duì)象的值大小是不固定的,因此不能存放到棧內(nèi)存中。但是內(nèi)存的地址大小是固定的,所以可將對(duì)象的訪問(wèn)地址存到棧內(nèi)存中。這樣,在查找引用類型的值時(shí),先從棧內(nèi)存中讀取內(nèi)存地址,再根據(jù)地址獲取到存在堆內(nèi)存中的值。



參考 https://juejin.im/entry/589c29a9b123db16a3c18adf

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容