我有一个看起来像这样的父/子关系。
parent.children = [child];
child.parent = parent;
parent
当所有其他对和的引用child
都被删除时,这会导致内存泄漏吗?只有剩余的引用才会相互引用。如果会因为循环引用导致内存泄漏,会
WeakMap
救我吗?
使用WeakMap
,
var parentMap = new WeakMap();
parent.children = [child];
parentMap.set(child, parent);
我想它不会从那以后,parentMap
有一个参考parent
,并且parent
有一个参考child
。还有一个循环引用。