How to make a setInterval() stop after some time or after a number of actions in JavaScript?



Use some conditions to stop after some time.

The below code will stop in half a minute.

Example

Following is the code −

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>Document</title>
</head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<body>
<script>
   var now = new Date().getTime();
   var interval = setInterval(function () {
      if (new Date().getTime() - now > 30000) {
         clearInterval(interval);
         return;
      }
      console.log("working");
   }, 2000);
</script>
</html>

To run the above program, save the file name anyName.html(index.html) and right click on the file. Select the option “Open with live server” in VS Code editor.

Output

This will produce the following output −


Advertisements