Изменить интервалы времени в node.js - PullRequest
0 голосов
/ 28 февраля 2020

Мне нужно изменить временные интервалы в этой функции javascript после кратных 3 и 5, но этого не происходит. Что не так? Для этого лучше использовать setInterval или setTimeout? Спасибо!

//index.js
var countx = 1;
var multiplox = 2500;

function intervalFunc() {
   console.log('Cant stop me now! ', countx, multiplox);

   if (countx % 3 === 0) {
      const timeoutObj = setTimeout(() => {
         console.log('timeout beyond time 3');
      }, 1500);
   }
   if (countx % 5 === 0) {
      const timeoutObj = setTimeout(() => {
         console.log('timeout beyond time 5');
      }, 20000);
   }
   countx++;

}
setInterval(intervalFunc, 4000);

1 Ответ

0 голосов
/ 28 февраля 2020
var countx = 1;
var multiplox = 2500;
var interv;
function intervalFunc() {
    console.log('Cant stop me now! ', countx, multiplox);

    if (countx % 3 === 0){
            console.log('timeout beyond time 3');
            clearInterval(interv);
            interv = setInterval(intervalFunc, 1500);
    }
    if (countx % 5 === 0){
            console.log('timeout beyond time 5')
            clearInterval(interv);
            interv = setInterval(intervalFunc, 20000);
    }
    countx ++;

}
interv = setInterval(intervalFunc, 4000);

Я не знаю, если это то, что вам нужно. Но если вам нужно изменить интервал Timeout, вы можете сделать это следующим образом!

То, что он делает, будет начинаться с тайм-аута 4000, а через каждые 3 раза он будет изменяться до 1500, а через каждые 5 раз изменится на 20000. Но я не знаю, почему у вас есть эта переменная мультиплокс?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...