五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【圖解系列】JS的數(shù)據(jù)類型,它們的區(qū)別?

2022-06-29 22:15 作者:doubleyong  | 我要投稿

最近看了《完全圖解超實用思考書》一書,??覺得使用圖解來記憶非常有用,
所以,接下來準(zhǔn)備寫一個【圖解系列】將很多的文字內(nèi)容使用圖解的形式表示出來。



主題:【JS的數(shù)據(jù)類型,它們的區(qū)別】


圖解:





文字說明:


JavaScript有哪些數(shù)據(jù)類型,它們的區(qū)別?
JavaScript共有八種數(shù)據(jù)類型,分別是 Undefined、Null、Boolean、Number、String、Object、Symbol、BigInt。
其中?Symbol 和 BigInt 是ES6 中新增的數(shù)據(jù)類型:

  • Symbol 代表創(chuàng)建后獨一無二且不可變的數(shù)據(jù)類型,它主要是為了解決可能出現(xiàn)的全局變量沖突的問題。

  • BigInt 是一種數(shù)字類型的數(shù)據(jù),它可以表示任意精度格式的整數(shù),使用 BigInt 可以安全地存儲和操作大整數(shù),即使這個數(shù)已經(jīng)超出了 Number 能夠表示的安全整數(shù)范圍。


這些數(shù)據(jù)可以分為原始數(shù)據(jù)類型和引用數(shù)據(jù)類型:

  • 棧:原始數(shù)據(jù)類型(Undefined、Null、Boolean、Number、String)

  • 堆:引用數(shù)據(jù)類型(對象、數(shù)組和函數(shù))


兩種類型的區(qū)別在于存儲位置的不同:

  • 原始數(shù)據(jù)類型直接存儲在棧(stack)中的簡單數(shù)據(jù)段,占據(jù)空間小、大小固定,屬于被頻繁使用數(shù)據(jù),所以放入棧中存儲;

  • 引用數(shù)據(jù)類型存儲在堆(heap)中的對象,占據(jù)空間大、大小不固定。如果存儲在棧中,將會影響程序運行的性能;引用數(shù)據(jù)類型在棧中存儲了指針,該指針指向堆中該實體的起始地址。當(dāng)解釋器尋找引用值時,會首先檢索其在棧中的地址,取得地址后從堆中獲得實體。


堆和棧的概念存在于數(shù)據(jù)結(jié)構(gòu)和操作系統(tǒng)內(nèi)存中,在數(shù)據(jù)結(jié)構(gòu)中:

  • 在數(shù)據(jù)結(jié)構(gòu)中,棧中數(shù)據(jù)的存取方式為先進(jìn)后出。

  • 堆是一個優(yōu)先隊列,是按優(yōu)先級來進(jìn)行排序的,優(yōu)先級可以按照大小來規(guī)定。


操作系統(tǒng)中,內(nèi)存被分為棧區(qū)和堆區(qū):

  • 棧區(qū)內(nèi)存由編譯器自動分配釋放,存放函數(shù)的參數(shù)值,局部變量的值等。其操作方式類似于數(shù)據(jù)結(jié)構(gòu)中的棧。

  • 堆區(qū)內(nèi)存一般由開發(fā)者分配釋放,若開發(fā)者不釋放,程序結(jié)束時可能由垃圾回收機(jī)制回收。





茍有恒?,?何必三更眠五更起關(guān)注我,一起學(xué)習(xí)吧
鼓勵一下,賜個贊?和?在看


【圖解系列】JS的數(shù)據(jù)類型,它們的區(qū)別?的評論 (共 條)

分享到微博請遵守國家法律
贡觉县| 精河县| 大丰市| 嵊州市| 卓尼县| 开鲁县| 嘉禾县| 屯门区| 红河县| 老河口市| 玛沁县| 屏南县| 惠来县| 通山县| 济阳县| 黑河市| 大同县| 万州区| 景德镇市| 吴忠市| 富阳市| 如东县| 天津市| 渝北区| 科技| 营山县| 永修县| 盐池县| 额尔古纳市| 三穗县| 木兰县| 绿春县| 九龙城区| 金乡县| 罗江县| 兰西县| 平阳县| 贵阳市| 涿鹿县| 萍乡市| 剑河县|