Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
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.
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'"
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.
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 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.
Use this package to easily convert various time formats to milliseconds.
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
ms(60000) // "1m"
ms(2 * 60000) // "2m"
ms(-3 * 60000) // "-3m"
ms(ms('10 hours')) // "10h"
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"
ms
, a string with a unit is returned100
for '100'
)ms
as a macro at build-time.npm link
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
FAQs
Tiny millisecond conversion utility
The npm package ms receives a total of 192,893,542 weekly downloads. As such, ms popularity was classified as popular.
We found that ms demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 55 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.