bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths

Loading lesson path

Learn/JavaScript/Objects, Classes, and Advanced Patterns
JavaScript•Objects, Classes, and Advanced Patterns

JavaScript Timeouts

The setTimeout() Method

The setTimeout() method schedules a function to run after a delay in milliseconds.

It is an async operation used to delay code execution without freezing the browser.

Waiting for a Timeout

When using the setTimeout() method, you can specify a function to be executed on time-out:

Example

setTimeout(myFunction, 3000);
function myFunction() {
  document.getElementById("demo").innerHTML = "I love You !!";
}

In the example above, myFunction is passed to setTimeout() as an argument.

3000 is the number of milliseconds before myFunction will be called.

When you pass a function as an argument, remember not to use parenthesis.

Right: setTimeout(myFunction, 3000);

Wrong: setTimeout(myFunction(), 3000);

Instead of passing a function name as an argument to another function, you can always pass the whole function instead:

Example

setTimeout(function() { myFunction("I love You !!!"); }, 3000);
function myFunction(value) {
  document.getElementById("demo").innerHTML = value;
}

Waiting for Intervals

When using the setInterval() method, you can specify function to be executed for each interval:

Example

setInterval(myFunction, 1000);
function myFunction() {
  let d = new Date();
  document.getElementById("demo").innerHTML= d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
}

In the example above, myFunction is passed to setInterval() as an argument.

1000 is the number of milliseconds between every time myFunction will be called.

A callback runs after another function finishes .

Callbacks were the first solution for asynchronous JavaScript .

JavaScript Callbacks

Previous

Asynchronous Programming

Next

JavaScript Callbacks