Socket
Socket
Sign inDemoInstall

util

Package Overview
Dependencies
23
Maintainers
7
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    util

Node.js's util module for all engines


Version published
Weekly downloads
31M
increased by1.48%
Maintainers
7
Install size
1.91 MB
Created
Weekly downloads
 

Package description

What is util?

The 'util' package is a core Node.js module that provides utilities for programmatic use in JavaScript. It includes a collection of helper functions for various tasks such as formatting strings, inspecting objects, and using inheritance.

What are util's main functionalities?

format

Formats a string using placeholders and returns it. Similar to printf in C.

const util = require('util');
console.log(util.format('%s:%s', 'foo', 'bar', 'baz')); // 'foo:bar baz'

inspect

Returns a string representation of an object for debugging purposes, with options to show hidden properties and control the depth of inspection.

const util = require('util');
console.log(util.inspect({ foo: 'bar' }, { showHidden: false, depth: null }));

inherits

Allows one constructor to inherit the prototype methods from another, a utility for implementing object-oriented inheritance.

const util = require('util');
function Base() {}
function Derived() {}
util.inherits(Derived, Base);

promisify

Converts a callback-based function to a function that returns a promise, facilitating the use of async/await.

const util = require('util');
const fs = require('fs');
const readFileAsync = util.promisify(fs.readFile);
readFileAsync('example.txt', 'utf8').then(console.log).catch(console.error);

Other packages similar to util

Readme

Source

util Build Status

Node.js's util module for all engines.

This implements the Node.js util module for environments that do not have it, like browsers.

Install

You usually do not have to install util yourself. If your code runs in Node.js, util is built in. If your code runs in the browser, bundlers like browserify or webpack also include the util module.

But if none of those apply, with npm do:

npm install util

Usage

var util = require('util')
var EventEmitter = require('events')

function MyClass() { EventEmitter.call(this) }
util.inherits(MyClass, EventEmitter)

Browser Support

The util module uses ES5 features. If you need to support very old browsers like IE8, use a shim like es5-shim. You need both the shim and the sham versions of es5-shim.

To use util.promisify and util.callbackify, Promises must already be available. If you need to support browsers like IE11 that do not support Promises, use a shim. es6-promise is a popular one but there are many others available on npm.

API

See the Node.js util docs. util currently supports the Node 8 LTS API. However, some of the methods are outdated. The inspect and format methods included in this module are a lot more simple and barebones than the ones in Node.js.

Contributing

PRs are very welcome! The main way to contribute to util is by porting features, bugfixes and tests from Node.js. Ideally, code contributions to this module are copy-pasted from Node.js and transpiled to ES5, rather than reimplemented from scratch. Matching the Node.js code as closely as possible makes maintenance simpler when new changes land in Node.js. This module intends to provide exactly the same API as Node.js, so features that are not available in the core util module will not be accepted. Feature requests should instead be directed at nodejs/node and will be added to this module once they are implemented in Node.js.

If there is a difference in behaviour between Node.js's util module and this module, please open an issue!

License

MIT

Keywords

FAQs

Last updated on 28 May 2021

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc