Bird
Raised Fist0
Node.jsframework~5 mins

setInterval and clearInterval in Node.js - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does setInterval do in Node.js?

setInterval runs a function repeatedly at a fixed time interval until stopped.

Click to reveal answer
beginner
How do you stop a repeating action started by setInterval?

You use clearInterval with the interval ID returned by setInterval.

Click to reveal answer
beginner
What type of value does setInterval return?

It returns an interval ID (a number or object) that identifies the timer.

Click to reveal answer
intermediate
Why should you always clear intervals when they are no longer needed?

To avoid memory leaks and unnecessary CPU usage by stopping the repeated function calls.

Click to reveal answer
beginner
Write a simple example of setInterval and clearInterval usage.
<pre>const id = setInterval(() =&gt; {
  console.log('Hello every second');
}, 1000);

setTimeout(() =&gt; {
  clearInterval(id);
  console.log('Stopped interval');
}, 5000);</pre>
Click to reveal answer
What does setInterval return when called?
AAn ID to clear the interval later
BThe result of the function called
CA promise that resolves after the interval
DNothing (undefined)
How do you stop a function from running repeatedly after using setInterval?
ACall <code>clearTimeout</code> with the interval ID
BCall <code>clearInterval</code> with the interval ID
CCall <code>stopInterval</code> with the function name
DSet the interval time to zero
What happens if you never call clearInterval on a running interval?
AThe interval automatically stops after 10 calls
BThe function runs once and stops
CNode.js throws an error
DThe function keeps running forever
Which of these is a correct way to use setInterval?
AsetInterval(() =&gt; console.log('Hi'), 1000);
BsetInterval(console.log('Hi'), 1000);
CsetInterval(console.log, 1000, 'Hi');
DsetInterval('console.log("Hi")', 1000);
What unit is the delay time in setInterval?
AMicroseconds
BSeconds
CMilliseconds
DMinutes
Explain how setInterval and clearInterval work together in Node.js.
Think about starting and stopping a repeating alarm.
You got /3 concepts.
    Describe why it is important to clear intervals when they are no longer needed.
    Imagine leaving a timer running that you don’t need anymore.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the setInterval function do in Node.js?
      easy
      A. Runs a function only once after a delay
      B. Stops a running timer
      C. Runs a function repeatedly at specified time intervals
      D. Schedules a function to run immediately

      Solution

      1. Step 1: Understand setInterval purpose

        setInterval schedules a function to run repeatedly every specified milliseconds.
      2. Step 2: Compare with other timer functions

        setTimeout runs once after delay, clearInterval stops intervals.
      3. Final Answer:

        Runs a function repeatedly at specified time intervals -> Option C
      4. Quick Check:

        setInterval = repeated execution [OK]
      Hint: setInterval repeats; setTimeout runs once [OK]
      Common Mistakes:
      • Confusing setInterval with setTimeout
      • Thinking clearInterval starts timers
      • Believing setInterval runs only once
      2. Which of the following is the correct syntax to stop a repeating timer started with setInterval?
      easy
      A. clearInterval(timerId);
      B. stopInterval(timerId);
      C. clearTimeout(timerId);
      D. cancelInterval(timerId);

      Solution

      1. Step 1: Identify the function to stop intervals

        clearInterval is the built-in function to stop intervals.
      2. Step 2: Check other options

        clearTimeout stops timeouts, others are invalid functions.
      3. Final Answer:

        clearInterval(timerId); -> Option A
      4. Quick Check:

        clearInterval stops intervals [OK]
      Hint: Use clearInterval with the interval ID [OK]
      Common Mistakes:
      • Using clearTimeout to stop intervals
      • Using non-existent functions like stopInterval
      • Not passing the timer ID to clearInterval
      3. What will the following code output to the console?
      let count = 0;
      const id = setInterval(() => {
        count++;
        console.log(count);
        if (count === 3) clearInterval(id);
      }, 1000);
      medium
      A. 1 2 3 (each number printed every second, then stops)
      B. 1 2 3 4 5 (prints numbers every second indefinitely)
      C. Only 3 printed once after 3 seconds
      D. No output because clearInterval is called immediately

      Solution

      1. Step 1: Trace the interval execution

        Every 1000ms, count increases and prints. When count reaches 3, clearInterval stops it.
      2. Step 2: Understand stopping condition

        After printing 3, the interval stops, so no further output.
      3. Final Answer:

        1 2 3 (each number printed every second, then stops) -> Option A
      4. Quick Check:

        Interval runs 3 times then stops [OK]
      Hint: clearInterval inside callback stops after condition [OK]
      Common Mistakes:
      • Assuming it runs forever
      • Thinking clearInterval stops immediately before first print
      • Confusing setTimeout with setInterval
      4. Identify the error in this code snippet:
      const id = setInterval(() => {
        console.log('Hello');
      });
      clearInterval(id);
      medium
      A. No error, code works fine
      B. clearInterval should be called inside the callback
      C. setInterval cannot be assigned to a variable
      D. Missing interval time argument in setInterval

      Solution

      1. Step 1: Check setInterval syntax

        setInterval requires two arguments: function and interval time in milliseconds.
      2. Step 2: Analyze the code

        Here, the interval time is missing, causing a syntax error or unexpected behavior.
      3. Final Answer:

        Missing interval time argument in setInterval -> Option D
      4. Quick Check:

        setInterval needs delay argument [OK]
      Hint: Always provide delay time in setInterval [OK]
      Common Mistakes:
      • Omitting the delay argument
      • Calling clearInterval immediately without delay
      • Thinking setInterval returns undefined
      5. You want to print "Tick" every second but stop after 5 ticks. Which code correctly achieves this?
      hard
      A. setInterval(() => { console.log('Tick'); clearInterval(timer); }, 1000);
      B. let ticks = 0; const timer = setInterval(() => { ticks++; console.log('Tick'); if (ticks === 5) clearInterval(timer); }, 1000);
      C. let ticks = 0; setTimeout(() => { console.log('Tick'); if (ticks < 5) ticks++; }, 1000);
      D. const timer = setInterval(() => { console.log('Tick'); if (ticks === 5) clearTimeout(timer); }, 1000);

      Solution

      1. Step 1: Identify correct interval and stopping logic

        let ticks = 0; const timer = setInterval(() => { ticks++; console.log('Tick'); if (ticks === 5) clearInterval(timer); }, 1000); uses setInterval with a counter and calls clearInterval after 5 ticks.
      2. Step 2: Check other options for errors

        setInterval(() => { console.log('Tick'); clearInterval(timer); }, 1000); clears immediately, let ticks = 0; setTimeout(() => { console.log('Tick'); if (ticks < 5) ticks++; }, 1000); uses setTimeout wrongly, const timer = setInterval(() => { console.log('Tick'); if (ticks === 5) clearTimeout(timer); }, 1000); uses clearTimeout instead of clearInterval.
      3. Final Answer:

        let ticks = 0; const timer = setInterval(() => { ticks++; console.log('Tick'); if (ticks === 5) clearInterval(timer); }, 1000); -> Option B
      4. Quick Check:

        Use counter and clearInterval after limit [OK]
      Hint: Use a counter and clearInterval after limit [OK]
      Common Mistakes:
      • Calling clearInterval immediately
      • Using clearTimeout to stop intervals
      • Using setTimeout instead of setInterval for repeated tasks