Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: DRANXZ88 en 07 de Agosto 2019, 22:25

Título: static Javascript. Propiedades y métodos estáticos “de clase” no objeto CU01148E
Publicado por: DRANXZ88 en 07 de Agosto 2019, 22:25
Solución propuesta para el ejercicio CU01148E del curso de programación JavaScript con ejemplos resueltos.

Citar
Define un tipo de objeto Meteorito cuyas propiedades de instancia (específicas de cada objeto) sean diametro, temperatura y nombre. La temperatura será un valor numérico que suponemos está en grados centígrados. Como propiedad estática del tipo meteorito define definicionSegunDiccionario (que debe contener la definición de meteorito) y como métodos estáticos obtenerRadio (que debe devolver el radio a partir de un parámetro diametro) y obtenerTemperaturaFarenheit (que debe devolver el valor de temperatura expresado en grados Farenheit a partir de un parámetro temperatura).  Crea un objeto de tipo Meteorito con un diámetro, temperatura y nombre y comprueba que puedes acceder a las propiedades y métodos estáticos mostrando por pantalla la definición de meteorito, la superficie del objeto creado y la temperatura Farenheit del objeto creado.

Etiqueta html
Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Ejercicios (CU01148E)</title>
<link rel="stylesheet" href="css/estilos48.css">
</head>
<body>
<section>
<div>
<button onclick="cargarMeterito();">Cargar Meteoritos</button>
</div>
</section>
<script type="text/javascript" src="js/funciones48.js"></script>
</body>
</html>

Estilos css
Código: [Seleccionar]
body{
background: green;
font-family: Arial, Helvetica, sans-serif;
}
button{
background-color:blue;color:white;width:120px;
border-radius: 5px;
}

Codigó javascript
Código: [Seleccionar]
function meteorito(diametro, temperatura, nombre){
this.diametro = diametro;
this.temperatura = temperatura;
this.nombre = nombre;
this.radio=0;
this.farenheit=0;
}

meteorito.definicionSegunDiccionario = 'Fragmento de un cuerpo procedente del espacio exterior que entra en la atmósfera a gran velocidad y cae sobre la Tierra.';
meteorito.obtenerRadio = function (diam){
radio = diam/2;
return radio;
};
meteorito.obtenertemperaturaFarenheit = function(temp){
farenheit = (temp * 9/5) + 32;
return farenheit;
};
//}

function cargarMeterito(){
var meteorito1 = new meteorito(250000,32,'Hoba');
alert('La definición segun diccionario es '+meteorito.definicionSegunDiccionario+' Su nombre es '+meteorito1.nombre+' tiene un diametro de '+meteorito1.diametro+
' con una temperatura de '+meteorito1.temperatura+'°C'+' con un radio de '+ meteorito.obtenerRadio(meteorito1.diametro)+' y temperatura farenheit '+
meteorito.obtenertemperaturaFarenheit(meteorito1.temperatura)+' °F');
}
Título: Re:static Javascript. Propiedades y métodos estáticos “de clase” no objeto CU01148E
Publicado por: Alex Rodríguez en 02 de Octubre 2020, 20:57
Hola, para quien revise el código, está bien resuelto. Nota: convendría eliminar las líneas this.radio=0; y this.farenheit=0; ya que estos valores deben calcularse usando métodos del objeto y no ser propiedades. Saludos.