Skip to content

Converting millis to a human-readable string is a pain. It doesn't have to be.

License

Notifications You must be signed in to change notification settings

Alorel/node-ms-util

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Coverage Status

NPM

Converting millis to a human-readable string is a pain. It doesn't have to be.

Table of contents

Related packages

You might want to check out the ms package. There are two main differences:

  • It can convert a string to millis
  • It can't display more than one unit, i.e. 3,660,000 ms would be converted to one hour, not one hour and one minute.

Base usage

Note: play around with it on Runkit!

Browser

It's always best to use a specific version - you'll find the CDN URLs here.

<script src="https://cdn.jsdelivr.net/ms-util/latest/ms-util.min.js" type="application/javascript"></script>
<!-- It is now available as window.parseMs -->

NodeJS

const parseMs = require('ms-util');

API

parse

Parse the given millis and return the number of days, hours, minutes seconds and ms they translate to.

console.log(parseMs.parse(86407049));
{
    "days": 1,
    "hours": 0,
    "minutes": 0,
    "seconds": 7,
    "millis": 49,
    "input": 86407049
}

toWords

Parse the given millis to a word string, e.g. 3660000 ms would become 01hr 01min 00sec by default.

Function signature:

parseMs.toWords = (ms, cfg = {}) => {};

Where ms is the millis you want to convert and cfg is configuration with the following keys:

  • pad: Whether to pad numbers with zeroes or not. Default: true.
  • forceMS: Force displaying millis even if ms is >= 1000. Default: false.
  • lang: Language pack override. The default is:
{
    "ms": "ms",
    "sec": "sec",
    "min": "min",
    "hour": "hr",
    "day": "d"
}

Usage:

console.log(parseMs.toWords(86407049)); // 1d 00hr 00min 07sec

colonSeparated

Parse the given millis to a colon-separated string, e.g. 3660000 ms would become 01:01:00 by default

Function signature:

parseMs.colonSeparated = (ms, cfg = {}) => {};

Where ms is the millis you want to convert and cfg is configuration with the following keys:

  • pad: Whether to pad numbers with zeroes or not. Default: true.
  • forceMS: Force displaying millis even if ms is >= 1000. Default: false.

Usage:

console.log(parseMs.colonSeparated(86407049)); // 1:00:00:07

About

Converting millis to a human-readable string is a pain. It doesn't have to be.

Resources

License

Stars

Watchers

Forks

Packages

No packages published