Ejercicios JavaScript resueltos del tutorial aprenderaprogramar: call JavaScript. Diferencia con apply. Constructores con herencia en cadena. Invocar this. Ejemplos (CU01150E)
Código que se propone como solución para el ejercicio 1:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Ejercicios (CU01150E)</title>
<script>
function Persona(nombre,nacionalidad){
this.nombre = nombre;
this.nacionalidad = nacionalidad;
}
Persona.prototype.mostrarNacionalidad = function(){
alert("Su nacionalidad es "+this.nacionalidad);
};
function Medico(trabajo,nombre,nacionalidad){
this.trabajo = trabajo;
Persona.call(this,nombre,nacionalidad);
}
Medico.prototype = new Persona();
function MedicoEspecialista(especialidad,trabajo,nombre,nacionalidad){
this.especialidad = especialidad;
Medico.call(this,trabajo,nombre,nacionalidad);
}
MedicoEspecialista.prototype = new Medico();
function mostrarMedico(){
console.log("llegue aca");
var medico = new MedicoEspecialista('Optamologo','IPS','Cesar','Paraguaya');
alert("El medico de nombre "+medico.nombre+" con especialidad "+medico.especialidad+" trabaja en "+medico.trabajo);
medico.mostrarNacionalidad();
}
</script>
</head>
<body>
<div id="cabecera">
<h2>Cursos aprenderaprogramar.com</h2>
<h3>Ejemplos JavaScript</h3>
</div>
<div style="color:blue;" id ="pulsador" onclick="mostrarMedico()"> Probar </div>
</body>
</html>