Neste link Você ira encontrar informações sobre herança em javascript, se você for um programador java irá ficar surpreso com a forma que o javascript trata isso, abaixo segue alguns exemplos de código que você pode encontrar maiores explicações no artigo citado.
function superClass() {
this.bye = superBye;
this.hello = superHello;
}
function subClass() {
this.bye = subBye;
}
subClass.prototype = new superClass; //subClass "herdou" superClass
function superHello() { // metodos da superClass
return "Hello from superClass";
}
function superBye() { // metodos da superClass
return "Bye from superClass";
}
function subBye() { // metodos da classe filha
return "Bye from subClass";
}
var newClass = new subClass();
superClass.prototype.blessyou = superBlessyou; // a super classe agora é filha da superBlessYou
function superBlessyou() {
return "Bless You from superClass";
}
alert(newClass.bye());
alert(newClass.hello());
alert(newClass.blessyou());//lembra isso é a classe filha e herdou a novos propriedades dinamicamente.
Métodos legais :).
function Person() {
this.name = "Rob Roberson";
this.age = 31;
}
function Employee() {
this.dept = "HR";
this.manager = "John Johnson";
}
Employee.prototype = new Person();
var Ken = new Employee();
if (Person.prototype.isPrototypeOf(Ken)) {
alert("Ken is a person");
}
for(property in Ken) {
alert(property);
}
alert(Ken.hasOwnProperty("manager"));