@stdlib/utils-inherit
v0.2.2
Published
Implement prototypical inheritance by replacing the prototype of one constructor with the prototype of another constructor.
Downloads
46,137
Readme
Prototypical Inheritance
Implement prototypical inheritance by replacing the prototype of one constructor with the prototype of another constructor.
Installation
npm install @stdlib/utils-inherit
Usage
var inherit = require( '@stdlib/utils-inherit' );
inherit( ctor, superCtor )
Implements prototypical inheritance by replacing the prototype of one constructor with the prototype of another constructor.
function Foo() {
return this;
}
Foo.prototype.beep = function beep() {
return 'boop';
};
function Bar() {
Foo.call( this );
return this;
}
inherit( Bar, Foo );
Notes
- This function is not designed to work with ES2015/ES6 classes. For ES2015/ES6 classes, use
class
withextends
.
Examples
var inherit = require( '@stdlib/utils-inherit' );
function Foo() {
return this;
}
Foo.prototype = {};
Foo.prototype.beep = function beep() {
return 'boop';
};
function Bar() {
Foo.call( this );
this._super = Foo.prototype;
return this;
}
// Set up prototypical inheritance:
inherit( Bar, Foo );
var bar = new Bar();
var bool = ( bar instanceof Bar );
// returns true
bool = ( bar instanceof Foo );
// returns true
bool = bar.beep();
// returns 'boop'
Notice
This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.
Community
License
See LICENSE.
Copyright
Copyright © 2016-2024. The Stdlib Authors.