What is ms?
The 'ms' npm package is a simple utility library for parsing and formatting various time formats. It allows you to easily convert between different time units such as milliseconds, seconds, minutes, hours, and days. It is commonly used to work with durations and timeouts in a human-readable format.
What are ms's main functionalities?
Convert from milliseconds to human-readable format
This feature allows you to convert a duration in milliseconds to a string that represents the duration in a more human-readable format, such as '1m' for one minute.
"const ms = require('ms');
console.log(ms(60000)); // '1m'"
Convert from human-readable format to milliseconds
This feature enables you to convert a human-readable time format into its equivalent number of milliseconds. For example, '2 days' would be converted to 172800000 milliseconds.
"const ms = require('ms');
console.log(ms('2 days')); // 172800000"
Round trip conversion
This demonstrates a round trip conversion where a human-readable duration is first converted to milliseconds and then back to a human-readable format.
"const ms = require('ms');
const duration = ms('1 hour');
console.log(ms(duration)); // '1h'"
Other packages similar to ms
moment
Moment.js is a comprehensive date handling library that can parse, validate, manipulate, and display dates and times. It offers more extensive features than 'ms', including localization, date arithmetic, and formatting, but it is also larger in size.
dayjs
Day.js is a minimalist library that parses, validates, manipulates, and displays dates and times. It is often considered a lightweight alternative to Moment.js with a similar API, and like 'ms', it is focused on simplicity and small footprint.
date-fns
Date-fns is a modular date utility library that provides the most comprehensive, yet simple and consistent toolset for manipulating JavaScript dates. It is function-based and allows for direct manipulation of date objects, offering more functionality than 'ms' but with a focus on being lightweight.
ms.js: miliseconds conversion utility
ms('1d')
ms('10h')
ms('2h')
ms('1m')
ms('5s')
ms('100')
ms(60000)
ms(2 * 60000)
ms(ms('10 hours'))
ms(60000, { long: true })
ms(2 * 60000, { long: true })
ms(ms('10 hours', { long: true }))
- Node/Browser compatible. Published as
ms
in NPM. - 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 ms is returned.
License
MIT