- ×
Timer.js is a periodic timer for Node.js and the browser.
Filed under miscellaneousWhat is it?
Timer.js is a periodic timer for Node.js and the browser.
Overview
Creating a Timer
A new Timer is created with either the new operator:
var timer = new Timer(resolution);
or the factory method:
var timer = Timer(resolution);
Where
resolution
is the tick rate of the timer. Ifresolution
is omitted it defaults to1000
milliseconds.resolution
can be either an integer in milliseconds or a string describing the resolution such as'2 seconds'
or'3 hours, 20 minutes'
.Binding and unbinding events to the Timer with
bind()
andunbind()
Events can be bound to the timer with the
bind(when, callback)
method:timer.bind(1000 * 3, function () {}); // fire event after 3 seconds
when
can also be a string describing the moment on that the event should be fired:timer.bind('3 seconds', function () {});
wherein
when
the event is fired is limited through the timerresolution
.For unbinding
unbind(callback)
can be used.Binding shortcuts
every()
andafter()
every(when, callback)
is just an alias forbind(when, callback)
, to make code more readable:timer.every('2 seconds', function () {});
after(when, callback)
is also binds an callback to the timer, but unbinds it automatically after the event is fired:timer.after('5 seconds', function () {});
Instance methods
timer.start()
start the timer.timer.stop()
stop the timer.timer.reset()
stops the timer and resets the tick count.timer.clear()
resets the timer and ubinds all event listeners.timer.ticks()
returns the tick count since start.timer.resolution()
returns the timer resolution in milliseconds.timer.running()
indicates if the timer is running.timer.drift(driftAmount)
AddsdriftAmount
milliseconds to the next event call. This should allow rudimentary syncing between different clocks.Usage example
var timer = new Timer('100 milliseconds'); timer.every('6 seconds', function () { console.log('timer event every 6 seconds'); }); timer.every('1 minute, 20 seconds', function () { console.log('timer event every 1 minute, 20 seconds'); }); timer.start();
Valid time strings units
millisecond(s)
,ms
,second(s)
,sec(s)
,s
,minute(s)
,min(s)
,m
,hour(s)
,hr(s)
,h
,day(s)
,d