JS - 垃圾回收机制

本文介绍了JavaScript的垃圾回收机制,重点讲解了可达性原则在内存管理中的应用。通过实例解释了如何通过执行上下文链判断数据是否可被清除。同时引发思考,探讨在特定情况下内存是否会被释放。
摘要由CSDN通过智能技术生成

垃圾回收由 JS 引擎实现, 对于我们来说是无法接触的

建议查看垃圾回收

可达性

可达性: 通过执行上下文链判断内存中的数据是否被引用

通过判断可达性决定内存中的数据是否可以被清除

例子

var obj = {
   };

如果了解 C 语言指针以及计算机系统, 那么很容易知道:

上面的声明实际是在堆内存开辟了空间存储复杂数据 {} , 分配的内存地址我们假设为 0x0001

那么 obj 指向栈内存, 存储的值为数据 {} 的地址, 即 0x0001

备注: 复杂数据即数据长度不确定, 数据可能非常大. 简单数据比如 var num = 0 , 这时候栈内存直接存储相应值 0

在这里插入图片描述

当我们执行

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值