Autor Tema: JavaScript Objetos con métodos internos y externos invocar con botón CU01144E  (Leído 1535 veces)

cristiannd

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 24
    • Ver Perfil
Dejo las dos soluciones del ejercicio CU01144E del curso de desarrollo web con JavaScript.

Citar
Define un tipo de objeto Medico en JavaScript que tenga como propiedades: nombre (String), personasCuradas (número entero), especialidad (String) y como métodos un método denominado curarPersona y otro método denominado mostrarDatos. El método curarPersona deberá añadir una unidad al valor de la propiedad personasCuradas y el método mostrarDatos deberá mostrar los datos el médico. Por ejemplo, “El médico se llama Juan Eslava, su especialidad es traumatología y lleva curadas 8 personas”. Crea dos objetos del tipo definido, e invoca sus métodos para comprobar que funcionan correctamente.

Crea las dos alternativas de código: métodos con funciones internas anónimas o métodos con referencia a funciones externas.


Método con funciones internas...

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <title>Ejercicio CU01144E</title>
    <script>
        /* Método con funciones internas */
        function Medico(nombre, personasCuradas, especialidad){
            this.nombre = nombre;
            this.personasCuradas = personasCuradas;
            this.especialidad = especialidad;

            this.curarPersonas = function(){
                this.personasCuradas = this.personasCuradas + 1;
alert('Persona curada');
            };

            this.mostrarDatos = function(){
                var msg;
                msg = 'El médico se llama '+this.nombre+', su especialidad es '+this.especialidad+' y lleva curadas '+this.personasCuradas+' personas';
                alert(msg);
            };
        }
        var medico1 = new Medico ('Juan Eslava', 0, 'traumatología')
    </script>
</head>
<body>
    <h1>Médico</h1>
    <h2>Juan Eslava</h2>
    <input type="button" value="Mostrar datos" onclick="medico1.mostrarDatos()">
    <input type="button" value="Curar persona" onclick="medico1.curarPersonas()">
</body>
</html>


Método con funciones externas...

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <title>Ejercicio CU01144E</title>
    <script>
        /* Método con funciones externas */
        function Medico(nombre, personasCuradas, especialidad){
            this.nombre = nombre;
            this.personasCuradas = personasCuradas;
            this.especialidad = especialidad;
            this.curarPersonas = curarPersonas;
            this.mostrarDatos = mostrarDatos;
        }

        function mostrarDatos(){
            var msg;
                msg = 'El médico se llama '+this.nombre+', su especialidad es '+this.especialidad+' y lleva curadas '+this.personasCuradas+' personas';
                alert(msg);
        }

        function curarPersonas(){
                this.personasCuradas = this.personasCuradas + 1;
alert('Persona curada');
            };

        var medico1 = new Medico ('Juan Eslava', 0, 'traumatología')
    </script>
</head>
<body>
    <h1>Médico</h1>
    <h2>Juan Eslava</h2>
    <input type="button" value="Mostrar datos" onclick="medico1.mostrarDatos()">
    <input type="button" value="Curar persona" onclick="medico1.curarPersonas()">
</body>
</html>
« Última modificación: 01 de Octubre 2020, 19:44 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2662
    • Ver Perfil
Buenas, para quien revise este ejercicio está bien resuelto. No crea dos objetos como pedía el enunciado, sino solo uno, pero a cambio al presentar los botones para poder invocar los métodos, resulta una solución interesante para el ejercicio. Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".