-1

clearInterval(intervalNumber) clears the timer but if we call setInterval(fn, interval) again it return new higher ID. Is there way to reset the setInterval return ID where from it started. I tried to search but not found any references.

Is this expected ?

var newInterval;
setInterval(() => {
    newInterval = setInterval(() => {
        console.log("New Interval is ", newInterval)
        clearInterval(newInterval);
    }, 500);
}, 1000);

//10
//New Interval is  11
//New Interval is  12
//New Interval is  13
//New Interval is  14
//Can it set to 11 again ?
Dipak Telangre
  • 1,792
  • 4
  • 19
  • 46

1 Answers1

0

setInterval(() => {...} has an ID, each time you run it a new ID generates. you run it each second so you are assigning a new ID to newInterval each second. Yes, that's the expected behavior.

If you do not clearInterval it will be the result:

var newInterval;
setInterval(() => {
    newInterval = setInterval(() => {
        console.log("New Interval is ", newInterval)
    }, 500);
}, 1000);
//console.log 
827
New Interval is  839
3 New Interval is  851
5 New Interval is  863
7 New Interval is  876
9 New Interval is  887
11 New Interval is  899
alireza
  • 518
  • 5
  • 15