• Stars
    star
    152
  • Rank 244,685 (Top 5 %)
  • Language
    JavaScript
  • Created about 12 years ago
  • Updated over 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Syntactic sugar for setTimeout and setInterval.

wait

Project unmaintained

Syntactic sugar for setTimeout and setInterval.

wait(time, callback, id)

Sugar for setTimeout.

wait(100, function(){
    // Do something in 100 milliseconds
});

wait('2s', function(){
    // Do something in 2 seconds
});

wait('2 minutes', function(){
    // Do something in 2 minutes
}, 'awesomeId');

repeat(time, callback, id, callBefore = false)

Sugar for setInterval.

If callBefore is true the callback will be executed before the interval.

repeat(100, function() {
    // Do something every 100 milliseconds
});

repeat('1 min', function() {
    // Do something every minute
}, 'awesomeId');

repeat('1 min', function() {
    // Run immediately and every minute
}, true);

repeat('1 min', function() {
    // Run immediately and every minute
}, 'awesomeId', true);

until(condition, callback, interval = 100, id)

Runs the callback function when the condition is true. If you don't specify an interval the condition will be check every 100 milliseconds.

var condition = function() {
    return 1 == 1;
};

until(condition, function() {
    // Do something when 1 == 1
});

until(condition, function() {
    // Check every second if 1 == 1 and do something.
}, '1 second');

until(condition, function() {
    // Check every second if 1 == 1 and do something.
}, 150, 'coolId');

clear

Syntactic sugar for clearInterval and clearTimeout

The clear() method can be used in 3 ways:

// Will clear all intervals and timeouts that where created with an id
clear();

// Will clear a timeout or interval given an id.
clear(id);

// The id can be two things.
var timeout = wait(100, callback);
clear(timeout);

wait(100, callback, 'awesome-id');
clear('awesome-id');

// Will clear all timeouts and intervals in an array.
clear([timeout, 'awesome-id']);

time

Time can be specified in various formats:

If time is a number, it will be interpreted as milliseconds.

100, 1 second, 3 minutes, 1 hour, 3 secs, 1 min, 2 hrs, 1s, 3m, 2h

Installation

npm install waitjs

Usage

// nodejs
require('waitjs');

<!-- browser -->
<script src="wait.js"></script>

Tests

npm test

Bitdeli Badge