javascript - 如何删除Javascript中的所有对象引用?
问题描述
给定以下代码:
let obj = { data: 1 };
let ref1 = { data: obj };
let ref 2 = [ obj ];
我怎样才能删除obj
它的引用也被删除?(我的意思是ref1.data === null && ref2.length === 0
)
可能吗?
解决方案
在 javascript 执行环境中的某个地方,有一段代码在跟踪对对象的引用并在所有引用超出范围时运行内存垃圾收集。
您正在寻找类似的东西,除了您想以某种方式在特定时间点找到对特定对象的所有活动引用,并将该引用更改为 null。
我认为这是不可能的,除非您想编写自己的 javascript 解释器。
但也许如果你支持一个关卡并解释你为什么要这样做,就有一种方法可以实现你的目标。
推荐阅读
- java - How does this work - Java 8 Optional.of and Optional.ofNullable
- android - 导航器与路线
- c# - ASP.NET MVC 5 输出和下载文件进度的最佳方法
- spring - 如何通过 Spring Cloud Stream 消费 DLQ 消息
- excel - 将工作表内容从选定文件复制到当前文件
- php - 完全按原样将大整数或浮点数转换为字符串
- protractor - 如何从命令提示符将错误日志写入量角器中的文件
- c# - 我需要什么才能在 c# 中统一创建音频可视化器
- c# - 相对图像路径引用在 wpf xceed busyindicator 控件的数据模板中不起作用?
- ag-grid-ng2 - 角度 ag-grid 自动绑定 false