javascript 中的垃圾回收和 React js

garbage collection in javascript and react js

据我所知javascript有自己的垃圾收集系统。在 React 中,当功能组件(函数是 javascript 中的一种对象)更新时,将创建一个新组件,旧组件将消失,这与基于 class 的组件不同(如我错了请纠正我!)。因此,如果一个功能组件有一个 ref 对象(使用 useRef)并将该对象传递给它的父组件,每次更新时,以前的功能组件版本不能被 GC 删除,因为它在它的某处有一个 ref父组件。我的结论有问题,但我不确定!非常感谢您的帮助。

So if a functional component has a ref object(using useRef) and passes that object to its parent component, every time it gets updated, the previous function component version cant be removed by GC because it has a ref somewhere in its parent component.

useRef 钩子存储ref,以便可以对之前的函数组件进行垃圾回收。当一个功能组件是 re-rendered 时,所有挂钩都从以前的渲染中保存。