@walkmanofficial
я начинающий програмист только учусь

Как сделать так чтобы когда я использовал данную команду я её не мог использовать пока не пройдет время поставленное на таймере?

я использовал этот таймер в написании команды в боте дискорд но столкнулся с проблемой, так как я планировал что команду можно будет юзать раз в пол часа а она используется не ограниченное количество раз просто выполняется через пол часа что делать?
Заранее всем спасибо

const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));

let iteration    = 0;
let handleOffset = 60000 * 30;

(async () => {
  while (iteration < handleOffset) {
    iteration = iteration + 1000;
    console.log('Осталось: ' + (handleOffset - iteration) + 'сек');
    
    await sleep(1000);
  }
})();

setTimeout(() => console.log('Хоба!'), handleOffset);
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
Alexandre888
@Alexandre888 Куратор тега Боты
Javascript-разработчик
в вашем вопросе есть ответ:

while (iteration < handleOffset) { . . .

просто делаете if-выражение с проверкой на iteration и handleOffset:
if (iteration < handleOffset) {
 // действие, которое происходит, пока iteration меньше handleOffset
} else {
 // действие, которое происходит при остановке таймера
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы