Prototypical Inheritance
Implement prototypical inheritance by replacing the prototype of one constructor with the prototype of another constructor.
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
classwithextends.
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'