JS 内存管理机制及验证( 二 )


JS 内存管理机制及验证

文章插图
 
(2) 案例二:使变量无法再次被引用(执行后释放内存)
限制变量的作用域 , 使变量无法再被外部引用 。
此段代码依然会执行这个函数 , 也会将值赋值给变量 , 但外部无法再次引用 demoData 的值 。
function getData() {
var demoData = https://www.isolves.com/it/cxkf/yy/js/2020-11-09/[]; // 局部变量
for (var i = 0; i < 1000; i++) {
demoData.push(randomString(5000))
}
}
getData();
然后回到 Memory 页点击 "Take snapshot" 重新取得内存的状态 , 接下来会得到与前面不同的结果 , 这次只占用了 1.2MB 的内存(其中 5MB 被释放掉了)
JS 内存管理机制及验证

文章插图
 
总结
通过前面的例子 , 我们知道了作用域以及内存之间的关系 , 而内存管理也是前端打工人必须要掌握的知识(除了控制内存的使用大小 , 还需在必要时保留而不被释放) 。




推荐阅读