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 时,所有挂钩都从以前的渲染中保存。
据我所知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 时,所有挂钩都从以前的渲染中保存。