Jin Yong Jin Yong - 5 months ago 20
Javascript Question

Sleep in Javascript - delay between actions

Is there any way I can do a sleep in JavaScript before it carries out another action?

Example:

var a = 1+3;
// sleep 3 seconds before the next action here
var b = a + 4;

Answer

You can use setTimeout to achieve a similar effect:

var a = 1 + 3;
var b;
setTimeout(function() {
    b = a + 4;
}, (3 * 1000));

This doesn't really 'sleep' JavaScript—it just executes the function passed to setTimeout after a certain duration (specified in milliseconds). Although it is possible to write a sleep function for JavaScript, it's best to use setTimeout if possible as it doesn't freeze everything during the sleep period.