What is pretty-hrtime?
The pretty-hrtime package is a small Node.js module that converts high-resolution time tuples (process.hrtime()) to a human-readable string. It is useful for logging and outputting performance timings in a format that is easier to comprehend than raw nanoseconds.
What are pretty-hrtime's main functionalities?
Convert high-resolution time to human-readable format
This feature allows you to take a high-resolution time tuple, such as the output from process.hrtime(), and convert it into a human-readable string that represents the elapsed time in words. This is useful for performance testing or timing operations in your applications.
const prettyHrtime = require('pretty-hrtime');
const start = process.hrtime();
// ... some time passes
const end = process.hrtime(start);
console.log(prettyHrtime(end));
Other packages similar to pretty-hrtime
humanize-duration
The humanize-duration package is similar to pretty-hrtime in that it converts time durations to a human-readable format. However, it is more versatile, supporting multiple languages and a variety of options for customization, such as rounding, units, and language selection.
moment-duration-format
This package is a plugin for the popular Moment.js library and provides functionality to format durations. It is similar to pretty-hrtime but requires Moment.js as a dependency and offers more complex formatting options, including template-based formatting.
pretty-ms
pretty-ms is another package that converts milliseconds to a human-readable string. It is similar to pretty-hrtime but works with millisecond precision instead of nanoseconds. It also offers additional features like compact output and the ability to parse strings back to milliseconds.
pretty-hrtime
process.hrtime() to words
Usage
var prettyHrtime = require('pretty-hrtime');
var start = process.hrtime();
var end = process.hrtime(start);
var words = prettyHrtime(end);
console.log(words);
words = prettyHrtime(end, {verbose:true});
console.log(words);
words = prettyHrtime(end, {precise:true});
console.log(words);
Note: process.hrtime() has been available since 0.7.6.
See http://nodejs.org/changelog.html
and https://github.com/joyent/node/commit/f06abd.
LICENSE
(MIT License)
Copyright (c) 2013 Richardson & Sons, LLC
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.