Here you can find the source of inheritsinherits(parent)
// Object inheritance Object.prototype.inherits = function inherits(parent) { if (typeof Object.create !== 'function') { Object.create = function (o) { function F() {} F.prototype = o;//from www .j ava2s . c om return new F(); }; } this.prototype = Object.create(parent.prototype); this.prototype.constructor = this; };
Function.prototype.inheritsFrom = function( parentClassOrObject ){ this.prototype.addPrototype( parentClassOrObject ); if ( parentClassOrObject.constructor == Function ) this.prototype.addPrototype( new parentClassOrObject ); this.prototype.constructor = this; this.prototype.__parent__ = parentClassOrObject.prototype; else ...
Object.deepExtend = function (destination, source) { for (var property in source) { if (source[property] && source[property].constructor && source[property].constructor === Object) { destination[property] = destination[property] || {}; arguments.callee(destination[property], source[property]); } else { destination[property] = source[property]; return destination; };