跳到主要内容

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;