Показать сообщение отдельно
  #1 (permalink)  
Старый 27.03.2014, 14:45
Новичок на форуме
Отправить личное сообщение для GlaIZier Посмотреть профиль Найти все сообщения от GlaIZier
 
Регистрация: 14.03.2014
Сообщений: 8

Проверка повторного вызова функции без глобальных переменных
Здравствуйте!

Подскажите, пожалуйста, можно ли проверить, была ли вызвана функция, без использования глобальных переменных?

Написал функцию на чистом JS, привязанную к кнопке и отвечающую за анимацию.
var animate = function(animationVar) {
   animationVar = animationVar || 0;
   if (animationVar > CONST) return;
   window.setTimeout(function () {
      animate(animationVar + 1);
   }, 50);
}

Соответсвенно, если нажать два раза анимация ускоряется. Можно ли как-то сделать проверку, была ли уже вызвана функция?
Можно поставить глобальную переменную и проверять ее внутри функции, но хотелось бы сделать изящнее. Смотрел в сторону замыканий, но так ничего и не смог придумать, чтобы работало, как надо.

Спасибо.
Ответить с цитированием