js堆和棧存儲(chǔ)數(shù)據(jù)的區(qū)別?
區(qū)別如下:
1.棧由操作系統(tǒng)自動(dòng)分配和釋放,而堆由開(kāi)發(fā)人員自主分配和釋放。
2.棧占據(jù)固定大小的空間,而堆若不主動(dòng)釋放,程序結(jié)束時(shí)由瀏覽器回收。
3.棧是一種運(yùn)算受限的線性表;堆其實(shí)是一種優(yōu)先隊(duì)列。
JavaScript中的變量分為基本類型和引用類型。
基本類型就是保存在棧內(nèi)存中的簡(jiǎn)單數(shù)據(jù)段,而引用類型指的是那些保存在堆內(nèi)存中的對(duì)象。