Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Создайте функцию дросселирование (тротлинга) — вызов функции callback производится не чаще, чем в time раз
- * Исправьте проблему с таймером: должны выводиться числа от 0 до 9.
- * Доп. задание: предложите несколько вариантов решения.
- */
- function throttle(time, callback) {
- let callbackArgs = null;
- let timeout = false;
- const waitThenDo = () => {
- callback.apply(this, callbackArgs);
- timeout = false;
- };
- return function() {
- if (!timeout) {
- callbackArgs = arguments;
- timeout = true;
- setTimeout(waitThenDo, time);
- }
- }
- }
- module.exports = { throttle };
Advertisement
Add Comment
Please, Sign In to add comment