JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 65504505
  • Score
    100M100P100Q298267F
  • License ISC

Browser-friendly inheritance fully compatible with standard node.js inherits()

Package Exports

  • inherits
  • inherits/inherits_browser
  • inherits/inherits_browser.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (inherits) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Browser-friendly inheritance fully compatible with standard node.js inherits.

This package exports standard inherits from node.js util module in node environment, but also provides alternative browser-friendly implementation through browser field. Alternative implementation is a literal copy of standard one located in standalone module to avoid requiring of util. It also has a shim for old browsers with no Object.create support.

While keeping you sure you are using standard inherits implementation in node.js environment, it allows bundlers such as browserify to not include full util package to your client code if all you need is just inherits function. It worth, because browser shim for util package is large and inherits is often the single function you need from it.

It's recommended to use this package instead of require('util').inherits for any code that has chances to be used not only in node.js but in browser too.

usage

var inherits = require('inherits');
// then use exactly as the standard one

note on version ~1.0

Version ~1.0 had completely different motivation and is not compatible neither with 2.0 nor with standard node.js inherits.

If you are using version ~1.0 and planning to switch to ~2.0, be careful:

  • new version uses super_ instead of super for referencing superclass
  • new version overwrites current prototype while old one preserves any existing fields on it