Syntactic sugar for setTimeout and setInterval.
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'); 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); 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'); 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 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
npm install waitjs // nodejs require('waitjs'); <!-- browser --> <script src="wait.js"></script> npm test 