Серьезное наследование в JS просто не так полезно. Скопируйте функции в другой объект, если они вам нужны, просто вызовите их в контексте этого объекта. Я делаю много ООП на земле Java, но в javascript легко избежать наследования с помощью контекста использования и обратных вызовов. То есть, если вы считаете, что вам нужна иерархия наследования, вам, вероятно, просто необходим обратный вызов или вызов функции в другом контексте.
Но чтобы ответить на ваш вопрос, который не является "правильным" способом, ознакомьтесь с javascript g arden
function Foo() {
this.value = 42;
}
Foo.prototype = {
method: function() {}
};
function Bar() {}
// Set Bar's prototype to a new instance of Foo
Bar.prototype = new Foo();
Bar.prototype.foo = 'Hello World';
// Make sure to list Bar as the actual constructor
Bar.prototype.constructor = Bar;
var test = new Bar() // create a new bar instance