Встречается на собеседованиях • сегодня
Как оптимизировать функцию
Оптимизация функции зависит от контекста, но общие подходы:
- Мемоизация – кэшируем результаты вызовов:
javascript
const memoize = (fn) => {
const cache = {};
return (...args) => {
const key = JSON.stringify(args);
return cache[key] || (cache[key] = fn(...args));
};
};-
Избегаем лишних вычислений – выносим константы из циклов, используем более эффективные алгоритмы.
-
Дебаунсинг/троттлинг для частых вызовов (например, обработчиков событий).
-
Web Workers – выносим тяжелые вычисления в отдельный поток.
-
Оптимизация DOM-операций – минимизируем перерисовки, используем
requestAnimationFrame.
Пример оптимизации цикла:
javascript
// Медленно:
for (let i = 0; i < arr.length; i++) {...}
// Быстрее:
const len = arr.length;
for (let i = 0; i < len; i++) {...}Профилируйте код перед оптимизацией, чтобы найти реальные узкие места!

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы