js 堆跟栈

              javascript的基本类型就5种:Undefined、Null、Boolean、Number和String,它们都是直接按值存储在栈中的,每种类型的数据占用的内存空间的大小是确定的,并由系统自动分配和自动释放。这样带来的好处就是,内存可以及时得到回收,相对于堆来说,更加容易管理内存空间。

              javascript中其他类型的数据被称为引用类型的数据 : 如对象(Object)、数组(Array)、函数(Function) …,它们是通过拷贝和new出来的,这样的数据存储于堆中。其实,说存储于堆中,也不太准确,因为,引用类型的数据的地址指针是存储于栈中的,当我们想要访问引用类型的值的时候,需要先从栈中获得对象的地址指针,然后,在通过地址指针找到堆中的所需要的数据。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 又有一段时间没有总结自己的所学所用了,懒惰无时无刻不在,还是要强迫自己做点什么来提醒自己掌握了哪些。今天回忆了一下...
    拉面头_7c92阅读 3,218评论 1 6
  • 堆的定义 堆是一种比较特殊的数据结构,可以被看做一棵树的数组对象,具有以下的性质: 堆中某个节点的值总是不大于或不...
    lucas7lw阅读 1,048评论 2 14
  • JS堆、栈、执行栈和EventLoop 堆、栈引用类型在栈中保存指针,在堆中保存对象值 执行栈 JS 代码在运行前...
    MAYDAY77阅读 969评论 1 0
  • 一、堆(heap)和栈(stack) 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内存...
    艾晓雪阅读 614评论 0 3
  • 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内存,大小不定也不会自动释放。 堆:队列优...
    翻腾着的淡水鱼阅读 616评论 0 0