Autor Tema: Herencia en JavaScript Crear objetos y usar prototype para generalizar CU01147E  (Leído 2666 veces)

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Hola, ya resolví el ejercicio CU01147E

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
   <button onclick="mostrar()">Cometas</button>
   
<script>   
// Definicion del objeto
function cometaDef(diametro,temperatura,nombre){
    this.diametro=diametro;
    this.temperatura=temperatura;
    this.nombre=nombre;
   
    }
   
//Definicion Metodo Clase del objeto
function construyendoProto(){
    this.definicionSegunDiccionario="Un cometa es muy chulo";
    this.obtenerRadio=function(){
        return(this.diametro)/2;       
    }
    this.obtenerTemperaturaFarenheit=function(){
        return (1.8*this.temperatura)+32;       
    }
}
   
cometaDef.prototype=new construyendoProto();

function mostrar(){
    var cometa=new Array();   
    cometa[0]=new cometaDef(13,12,"arena de mal");
    cometa[1]=new cometaDef(120,12,"bonito");
    cometa[2]=new cometaDef(123,12,"rueda amarilla");
    var msg='';
for(i in cometa){
msg = 'Definicion de cometa ' + cometa[i].definicionSegunDiccionario + '\n';
msg = msg + 'El cometa ' + cometa[i].nombre + ' tiene de diametro ' + cometa[i].diametro + ' y su radio es de  '+cometa[i].obtenerRadio()+ "\n";
                    msg = msg + 'Además tiene una temperatura de ' +cometa[i].obtenerTemperaturaFarenheit()+ ' de grados Farenheit, y una temperatura en grados centigrados de '+cometa[i].temperatura;
                    alert(msg);
}
}   
</script>   
</body>
</html>


Pero a raiz de este ejercicio me han surgido nuevas dudas que no he podido resolver.

Estoy intentando el usuario puede dar los valores de los satelites, he creado varios botones para cada cometa, asi cuando apreta el boton de cometa 1, había pensado en este código

Código: [Seleccionar]
function cometa1(){
    var diametro=prompt("Cual va a ser su diametro:");
    var temperatura=prompt("Que temperatura tiene:");
    var nombre=prompt("Que nombre le vas a poner:");
    var cometa[0]=new cometaDef(diametro,temperatura,nombre);
}

No consigo meter los datos. Necesito una ayudita.
« Última modificación: 13 de Noviembre 2015, 08:16 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Hola el ejercicio está bien resuelto  ;D

Sobre la duda en esta entrega se explica prompt: http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=862:window-javascript-metodos-efectos-confirm-prompt-open-moveby-moveto-focus-resize-close-cu01174e&catid=78:tutorial-basico-programador-web-javascript-desde-&Itemid=206

prompt te devuelve un String si quieres convertirlo a numérico tienes que hacer una conversión de tipo de datos con Number, no sé si es a eso a lo que te referías conque no consigues meter los datos ¿?

Salu2

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Efectivamente Ogramar, aplicando Number(variable) he podido hacerlo. ;D
Muchas gracias.

 

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".