Buenas
, estoy en la parte de herencia con javascript en la entrega CU01150E del tutorial de programación web y se me ha hecho un poco compleja enteder cierta parte, en especial este código:
<script type="text/javascript">
function Profesor (institucion) {
this.institucion = institucion || 'Desconocida';
this.salarioBase = 1200;
}
function ProfesorInterino(mesesContrato, institucion) {
Profesor.call(this, institucion);
this.mesesContrato = mesesContrato || -1;}
function ejemploObjetos() {
var unProfesorInterino = new ProfesorInterino(4, 'Universidad de Chapingo');
var msg = 'El objeto unProfesorInterino tiene ' + unProfesorInterino.mesesContrato + ' meses de contrato';
msg = msg + ' y pertenece a la institución '+unProfesorInterino.institucion;
alert(msg);
}
</script>
Creo la instancia de "unprofesorInternino" y le paso como parametro la institucion="universidad chapingo", se ejecuta la funcion ProfesorInterino y con ello se hace la llamada en "Profesor.call(this, institucion);"
Ahora
¿que objeto esta pasando el this?, ¿unprofesorInternino?
¿Quiere decir que la funcion quedaria mas o menos de esta forma?
function Profesor (institucion) {
UnprofesorInterino.institucion = institucion || 'Desconocida';//
this.salarioBase = 1200;
}
function ProfesorInterino(mesesContrato, institucion) {
//haciendo la simulacion
Profesor.call(UnprofesorInterino, institucion);
this.mesesContrato = mesesContrato || -1;}
En ese caso, unprofesorInterino ya habia capturado el valor de la insitucion al crearse el objeto, lo que faltaria seria asignarlo al objeto profesor no?, estoy complicado en este punto, agradeceria mucho si alguien pudiera explicarme XD.