Когда я смотрю на useCallback и useMemo, я вижу то же самое. Вы передаете функцию и массив зависимостей. Эта функция запускается повторно только в случае изменения зависимости.
Эта строка добавлена в конце, и я не могу понять ее: useCallback(fn, deps) is equivalent to useMemo(() => fn, deps)
Я бы хотел, чтобы было дальнейшее объяснение, это могло бы помочь мне понять разницу между этими двумя функциями.
Из примеров кода, которые я вижу в Интернете, кажется, что useCallback естественным образом используется для обратных вызовов, а useMemo - для кода, не связанного с обратным вызовом. Эти функции отличаются только по названию? Должно быть что-то происходит под капотом, что просто не прописано явно? Запоминает ли useCallback ссылку на функцию, в то время как useMemo запоминает возвращаемый результат функции?