In which scenarios might useMemo not be necessary?
useMemo is usually unnecessary for cheap calculations whose result does not need stable identity. It is most useful when an expensive calculation can be skipped, or when a stable reference helps memoized child components or other Hooks avoid unnecessary work.