Здравствуйте!
Подскажите, пожалуйста, можно ли проверить, была ли вызвана функция, без использования глобальных переменных?
Написал функцию на чистом JS, привязанную к кнопке и отвечающую за анимацию.
var animate = function(animationVar) {
animationVar = animationVar || 0;
if (animationVar > CONST) return;
window.setTimeout(function () {
animate(animationVar + 1);
}, 50);
}
Соответсвенно, если нажать два раза анимация ускоряется. Можно ли как-то сделать проверку, была ли уже вызвана функция?
Можно поставить глобальную переменную и проверять ее внутри функции, но хотелось бы сделать изящнее. Смотрел в сторону замыканий, но так ничего и не смог придумать, чтобы работало, как надо.
Спасибо.