1.0.0 • Published 4 years ago

@almeidaa/ms v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

ms

Use this package to easily convert various time formats to milliseconds.

Examples

ms('2 days')  // 172800000
ms('1d')      // 86400000
ms('10h')     // 36000000
ms('2.5 hrs') // 9000000
ms('2h')      // 7200000
ms('1m')      // 60000
ms('5s')      // 5000
ms('1y')      // 31557600000
ms('100')     // 100
ms('-3 days') // -259200000
ms('-1h')     // -3600000
ms('-200')    // -200

Convert from Milliseconds

ms(60000)             // "1m"
ms(2 * 60000)         // "2m"
ms(-3 * 60000)        // "-3m"
ms(ms('10 hours'))    // "10h"

Time Format Written-Out

ms(60000, { long: true })             // "1 minute"
ms(2 * 60000, { long: true })         // "2 minutes"
ms(-3 * 60000, { long: true })        // "-3 minutes"
ms(ms('10 hours'), { long: true })    // "10 hours"

Round to decimal place

ms(60000, { decimal: 1 })                           // "1m"
ms(66000, { decimal: 1 })                           // "1.1m"
ms(-3 * 66000, { long: true, decimal: 1 })          // "-3.3 minutes"
ms(234234234, { decimal: 2  })                      // "2.71m"
ms(ms('10.5 hours'), { long: true, decimal: 1 })    // "10.5 hours"

Features

  • Works both in Node.js and in the browser
  • If a number is supplied to ms, a string with a unit is returned
  • If a string that contains the number is supplied, it returns it as a number (e.g.: it returns 100 for '100')
  • If you pass a string with a number and a valid unit, the number of equivalent milliseconds is returned

Related Packages

  • ms.macro - Run ms as a macro at build-time.

Caught a Bug?

  1. Fork this repository to your own GitHub account and then clone it to your local device
  2. Link the package to the global module directory: npm link
  3. Within the module you want to test your local development instance of ms, just link it to the dependencies: npm link ms. Instead of the default one from npm, Node.js will now use your clone of ms!

As always, you can run the tests using: npm test

acorn-jsxacornansi-colorsajvansi-escapesansi-regexansi-stylesargparsearray-includesarray.prototype.flatastral-regexbalanced-matchbrowser-stdoutbrace-expansioncallsiteschalkchardetcli-cursorcli-widthcolor-namecolor-convertcommanderconcat-mapcross-spawncontains-pathdeep-isdebugdiffdefine-propertiesemoji-regexdoctrineerror-exenquireres-abstractes-to-primitiveeslint-module-utilseslint-import-resolver-nodeeslint-scopeeslint-utilsespreeeslint-visitor-keysesprimaesqueryestraverseesrecurseescape-string-regexpesutilsexternal-editorfast-json-stable-stringifyfast-levenshteinfast-deep-equalfiguresfile-entry-cachefind-upflat-cacheflattedfs.realpathfunctional-red-black-treefunction-bindglobglobalsglob-parentgraceful-fsgrowlhashas-flaghehas-symbolshosted-git-infoignoreiconv-liteimport-freshinflightimurmurhashinheritsinquireris-arrayishis-callableis-date-objectis-extglobis-fullwidth-code-pointis-regexis-globis-stringis-symbolisarrayjs-tokensjs-yamlisexejson-stable-stringify-without-jsonifyjson-schema-traversejson5levnload-json-filelodashmimic-fnminimatchminimistmkdirpmsnatural-comparemute-streamnice-trynormalize-package-datalocate-pathobject-keysobject-inspectobject.valuesonceobject.assignonetimeoptionatoros-tmpdirp-locatep-limitp-tryparent-moduleparse-jsonpath-existspath-is-absolutepath-keypath-parsepifypath-typeprogresspkg-dirprelude-lspunycoderead-pkgread-pkg-upregexppresolveresolve-fromrestore-cursorrimrafrun-asyncrxjssemversafer-buffershebang-commandshebang-regexsignal-exitslice-ansispdx-exceptionsspdx-correctspdx-expression-parsespdx-license-idssprintf-jsstring-widthstring.prototype.trimstartstring.prototype.trimendstrip-bomstrip-json-commentsstrip-ansitext-tablethroughtabletsconfig-pathstmptslibtype-checktype-festsupports-coloruri-jsv8-compile-cachevalidate-npm-package-licenseword-wrapwrappywhichwrite
1.0.0

4 years ago