Назад к вопросам
Middle
6
Реализуй функцию callLimit, которая ограничивает количество вызовов переданной функции до заданного лимита, а также предоставляет метод reset для сброса счётчика.
Компании, где спрашивали
Mayflower
Ответ от нейросети
sobes.tech AI
javascript function callLimit(fn, limit) { let count = 0;
function limited(...args) { if (count < limit) { count++; return fn(...args); } // Можно вернуть undefined или выбросить ошибку, если превышен лимит }
limited.reset = () => { count = 0; };
return limited; }
// Пример использования: const sayHello = () => console.log('Hello'); const limitedHello = callLimit(sayHello, 3);
limitedHello(); // Hello limitedHello(); // Hello limitedHello(); // Hello limitedHello(); // не вызовется
limitedHello.reset(); limitedHello(); // Hello