FinalizationRegistry
一、认识
FinalizationRegistry 对象可以让你在对象被垃圾回收时请求一个回调。
二、构造函数
2.1 FinalizationRegistry()
const registry = new FinalizationRegistry(heldValue => {
// ....
});
三、实例方法
3.1 register()
语法
register(target, heldValue)
register(target, heldValue, unregisterToken)
3.2 unregister()
语法
unregister(unregisterToken)
四、应用场景
4.1 注册对象回收时的回调
const registry = new FinalizationRegistry((heldValue)=>{
console.log('恭喜您,内存回收成功!',heldValue); // 等待一段时间后会输出
});
let obj = {
type:'对象'
}
registry.register(obj,obj.type);
obj = null;