Встречается на собеседованиях • сегодня

Почему нельзя везде писать useCallback

useCallback стоит использовать только для мемоизации колбэков, которые передаются в дочерние компоненты и могут вызывать лишние ререндеры. В остальных случаях это избыточно и даже вредно:

  1. Лишние вычисления – сам useCallback требует ресурсов для работы
  2. Усложнение кода – делает его менее читаемым без реальной пользы
  3. Оптимизация без причины – если колбэк не влияет на ререндеры, мемоизация бесполезна

Пример, где useCallback избыточен:

jsx
const handleClick = useCallback(() => {
  console.log('Clicked!');
}, []);
// Проще без useCallback:
const handleClick = () => console.log('Clicked!');

Используй useCallback только когда:

  • Колбэк передаётся в memo-компонент
  • Колбэк используется в зависимостях других хуков (useEffect и т.д.)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы