> Для чего используется хук useCallback в React (JavaScript)
Уровень: senior · Роль: frontend · Язык: JavaScript · Категория: Технические вопросы
Компании: ESoft
Стек: JavaScript, Node.js, React
> Пример ответа
Хук useCallback в React используется для мемоизации функций. Он возвращает мемоизированную версию колбэка, которая изменяется только при изменении одной из зависимостей, переданных вторым аргументом. Это предотвращает ненужное создание новых функций при каждом рендере компонента, что особенно полезно для оптимизации производительности в двух случаях:
-
Передача колбэков дочерним компонентам, обернутым в
React.memo- чтобы избежать их лишних ререндеров, когда родительский компонент обновляется, но сам колбэк не изменился. -
Использование в хуках эффектов (например,
useEffect) - чтобы избежать бесконечных циклов или лишних вызовов эффекта, когда функция передается как зависимость.
Пример:
JAVASCRIPTconst handleClick = useCallback(() => {console.log('Clicked');}, []); // Функция создается один раз и не меняется при ререндерах
Без useCallback каждая новая ссылка на функцию при ререндере приводила бы к тому, что дочерние компоненты (обернутые в memo) или эффекты с этой функцией в зависимостях срабатывали бы повторно, даже если логика функции не изменилась.
> Похожие задачи по JavaScript
Что такое интерфейсы и типы в TypeScript, для чего они нужны и чем отличаются?
Какой опыт работы с REST API и какими инструментами пользовалась
Почему нужно соблюдать порядок вызова хуков в React?
Как защититься от SQL инъекции
> Похожие задачи по frontend
Что такое интерфейсы и типы в TypeScript, для чего они нужны и чем отличаются?
Какой опыт работы с REST API и какими инструментами пользовалась
Почему нужно соблюдать порядок вызова хуков в React?
Как защититься от SQL инъекции
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью