stopwatch-node
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

Stopwatch

A simple JS/TS Stopwatch with 0 dependency.

This is inspired by the Spring-Stopwatch. Written in Typescript, 100%` Test Coverage.

Install

npm install stopwatch-node

Example

import { StopWatch } from 'stopwatch-node';
 
const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
 
(async () => {
  const sw = new StopWatch('sw');
  sw.start('Task 1');
  await sleep(1000);
  sw.stop();
  // whether the stop watch is currently running
  console.info(sw.isRunning());
 
  const task2Name = 'Task 2';
  sw.start(task2Name);
  await sleep(1500);
  sw.stop();
 
  sw.start('Task 3');
  await sleep(500);
  sw.stop();
 
  sw.start('Task 4');
  await sleep(300);
  sw.stop();
 
  console.info(`Short Summary: ${sw.shortSummary()}`);
  console.info(`Task Count: ${sw.getTaskCount()}`);
  // a table describing all tasks performed
  sw.prettyPrint();
 
  const task2 = sw.getTask(task2Name);
  console.info(`'${task2Name}' took ${task2?.timeMills} and percentage is ${task2?.percentage}`);
})();

Output

------------------------------------------
ms 		 % 		 Task name
------------------------------------------
1000 		 30.21 		 Task 1
1504 		 45.44 		 Task 2
505 		 15.26 		 Task 3
301 		 9.09 		 Task 4


'Task 2' took 1506 and percentage is 45.47

Package Sidebar

Install

npm i stopwatch-node

Weekly Downloads

4,331

Version

1.1.0

License

MIT

Unpacked Size

27.4 kB

Total Files

28

Last publish

Collaborators

  • vcfvct