Timer
Minimal javascript library to create and manage timers
NOTE: Depends on window.requestAnimationFrame
. If your environment does not support it, you can polyfill.
Installation
$ npm install @georapbox/timer --save
The library is exported in UMD, CommonJS, and ESM formats. You can import it the following ways:
Using ESM import statement
import Timer from '@georapbox/timer';
Using CommonJS require statement
const Timer = require('@georapbox/timer');
As old school browser global
<script src="https://unpkg.com/@georapbox/timer/dist/Timer.umd.min.js"></script>
API
-
Timer
- new Timer(elapsedTime, duration, [callback])
-
.time() ⇒
Object
-
.start() ⇒
Timer
-
.stop() ⇒
Timer
-
.reset() ⇒
Timer
-
.isRunning() ⇒
Boolean
new Timer(elapsedTime, duration, [callback])
Timer constructor: Creates a new Timer instance.
Throws:
-
TypeError
Ifduration
is not a number orNaN
. -
TypeError
IfelapsedTime
is not a number orNaN
.
Param | Type | Description |
---|---|---|
elapsedTime | Number |
The time that has elapsed in milliseconds. If a negative number provided, it will become 0 . If a number greater than duration is provided, it will become equal to duration . |
duration | Number |
The timer's duration in milliseconds. If a negative number provided, it will become 0 . |
[callback] | function |
Function to be executed while timer is running. The Timer instance is passed by as parameter. |
Object
timer.time() ⇒ Get the remaining and elapsed time.
Kind: instance method of Timer
Returns: Object
- An object literal that contains the remaining and the elapsed time in milliseconds.
Timer
timer.start() ⇒ Starts the timer. If the timer instance has been already started, the timer will just resume.
Kind: instance method of Timer
Returns: Timer
- The Timer instance.
Timer
timer.stop() ⇒ Stops/Pauses the timer.
Kind: instance method of Timer
Returns: Timer
- The Timer instance.
Timer
timer.reset() ⇒ Resets the timer to its initial state.
Kind: instance method of Timer
Returns: Timer
- The Timer instance.
Boolean
timer.isRunning() ⇒ Checks (at any time) if the timer is running or not.
Kind: instance method of Timer
Returns: Boolean
- true
if the timer is running; otherwise false
.