herencia, encadenamiento de prototipos

la nueva instancia es de los dos constructores, persona y policia al hacer un prototype de new Persona, ya que queremos que policia herede de persona

by Fabian Allel

JavaScript

function Persona(){
        this.nombre='Fabian',
        Persona.prototype.diNombre=function(){
            alert(this.nombre);
        }
}

function Policia(){
        this.numPlaca=66595,
        Policia.prototype.diPlaca=function(){
            alert(this.numPlaca);
        }
}
//Policia hereda de persona
Policia.prototype = new Persona();
//es necesario asignar el constructor del prototipo a la función correcta o tendremos problemas para identificar el tipo de la nueva clase
Policia.prototype.constructor=Policia;

var policia1= new Policia();
policia1.diNombre();
policia1.diPlaca();

alert(policia1 instanceof Persona);
alert(policia1 instanceof Policia);
console.log(policia1);