javascript中的栈堆内存
程序员文章站
2022-04-10 15:43:00
< 栈内存 > 俗称叫做作用域(全局作用域/私有作用域) >为js代码提供的执行环境(执行js代码的地方) >基本数据内省是直接存放在栈内存中的 < 堆内存 > 存储引用类型值得(相当于一个存储仓库) >对象存储的是键值对 >函数存储的是代码字符串 在项目中,我们的内存越少性能越好,我们需要把一些没 ......
<--------栈内存--------->
俗称叫做作用域(全局作用域/私有作用域)
>为js代码提供的执行环境(执行js代码的地方)
>基本数据内省是直接存放在栈内存中的
<--------堆内存--------->
存储引用类型值得(相当于一个存储仓库)
>对象存储的是键值对
>函数存储的是代码字符串
在项目中,我们的内存越少性能越好,我们需要把一些没用的内存处理掉
【堆内存】
var o = {}; 当前对象对应的堆内存贝变量o占用着,堆内存是无法被销毁的
o = null;null叫做空对象指针(不指向任何堆内存),此时上一次的堆内存就没有被占用了,谷歌浏览器会在空闲时间把没有被占用的堆内存自动释放(销毁/回收),ie浏览器是用计数指针方式
【栈内存】
一般情况下,函数执行形成栈内存,函数执行完,浏览器会把形成的栈内存自动释放;有时候执行完成,栈内存不能被释放
全局作用域在加载页面的时候执行,在关闭页面的时候销毁;
上一篇: Java面向对象总结
下一篇: Linux--磁盘管理--04
推荐阅读
-
深入理解JavaScript中的传值与传引用_javascript技巧
-
js类中获取外部函数名的方法_javascript技巧
-
设计模式中的facade外观模式在JavaScript开发中的运用(高级篇)
-
彻底理解Javascript 中的 Promise
-
Javascript 函数中的参数使用分析_javascript技巧
-
整理的比较全的event对像在ie与firefox浏览器中的区别_javascript技巧
-
PHP实现Javascript中的escape及unescape函数代码分享,escapeunescape
-
JavaScript中多种绑定事件方式的区别讲解
-
JavaScript中setInterval的使用详解
-
JavaScript中关于for循环删除数组元素内容时出现的问题