3 ms·
Anonymous functions are not primitive values, so JavaScript passes them as pointers. React uses strict equality when comparing props, so non-primitive values ar
by koito17 2y ago
Anonymous functions are not primitive values, so JavaScript passes them as pointers. React uses strict equality when comparing props, so non-primitive values are compared with pointer equality. The useCallback hook allows one to cache anonymous functions in order to pass stable pointers as props and avoid re-renders from pointers changing. It's the exact same motivation as useMemo for passing props with "stable identity".