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: Salvadoruve2 en 28 de Julio 2016, 18:27

Título: static Javascript. Propiedades y métodos estáticos. Ejercicio Resuelto CU01148E
Publicado por: Salvadoruve2 en 28 de Julio 2016, 18:27
Hola aquí dejo mi solucion para el ejercicio propuesto en la entrega CU01148E del tutorial básico de desarrollo web con JavaScript.

Me gustaría saber si voy en la dirección correcdta o no con las propiedades estáticas.

Muchas gracias

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>empty heart</title>
<meta charset="utf-8">
<style type="text/css">
body {text-align: center; margin: 0 auto;}
div {padding:15px; width: auto; display: inline-block; margin: 25px; margin-top: 300px; cursor: pointer; color: white; border-radius: 40px; background: rgb(202, 60, 60);}
div:hover, div:hover {background: rgb(66, 184, 221);}
</style>
<script type="text/javascript">
function Meteoritos(diametro, temperatura, nombre) {
this.diametro = diametro; this.temperatura = temperatura; this.nombre = nombre;
}

Meteoritos.definicionDiccionario = 'Un meteorito es un meteoroide que alcanza la superficie de un planeta debido a que no se desintegra por completo en la atmósfera. La luminosidad dejada al desintegrarse se denomina meteoro.';

Meteoritos.obtenerRadio = function () {alert('El valor del radio del meteorito Armagedon es de: 350 metros' );}

Meteoritos.obtenerTemperaturaF = function () {alert('El valor de la temperatura en ºF del meteorito Armagedon es de: ' + (50*(9/5)+32) + ' grados.')};

function start() {
var meteorito1 = new Meteoritos(700,50, 'Armagedon');

alert('La definición de meteorito según el diccionario es: ' + Meteoritos.definicionDiccionario);

Meteoritos.obtenerRadio();

Meteoritos.obtenerTemperaturaF();

}
  </script>
</head>
<body>
<div onclick="start()">Dame tu fuerza pegaso</div>
</body>
</html>
Título: Re:static Javascript. Propiedades y métodos estáticos. Ejercicio Resuelto CU01148E
Publicado por: César Krall en 05 de Agosto 2016, 00:38
Hola!

Sí vas en la buena dirección. Lo que veo mal definido es

Meteoritos.obtenerRadio = function () {alert('El valor del radio del meteorito Armagedon es de: 350 metros' );}

Esta función debería devolverte el radio de cada meteorito calculado a partir de su diámetro, no un mensaje igual para todos los objetos de tipo Meteorito

Fíjate en cómo se resuelve en https://www.aprenderaprogramar.com/foros/index.php?topic=3365.0

Saludos!
Título: Re:static Javascript. Propiedades y métodos estáticos. Ejercicio Resuelto CU01148E
Publicado por: Salvadoruve2 en 06 de Agosto 2016, 11:39
Hola César gracias por responder.

Aqui la solución creo correcta.

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>empty heart</title>
<meta charset="utf-8">
<style type="text/css">
body {text-align: center; margin: 0 auto;}
div {padding:15px; width: auto; display: inline-block; margin: 25px; margin-top: 300px; cursor: pointer; color: white; border-radius: 40px; background: rgb(202, 60, 60);}
div:hover, div:hover {background: rgb(66, 184, 221);}
</style>
<script type="text/javascript">
function Meteoritos(diametro, temperatura, nombre) {
this.diametro = diametro; this.temperatura = temperatura; this.nombre = nombre;
}

Meteoritos.definicionDiccionario = 'Un meteorito es un meteoroide que alcanza la superficie de un planeta debido a que no se desintegra por completo en la atmósfera. La luminosidad dejada al desintegrarse se denomina meteoro.';

Meteoritos.obtenerRadio = function (diametro) {return diametro/2;}

Meteoritos.obtenerTemperaturaF = function (grados) {return (grados*(9/5)+32);}

function start() {
var meteorito1 = new Meteoritos(700,50, 'Armagedon');

alert('La definición de meteorito según el diccionario es: ' + Meteoritos.definicionDiccionario);


alert('El valor del radio del meteorito ' + meteorito1.nombre + ' es: ' + Meteoritos.obtenerRadio(meteorito1.diametro));


alert('El valor de la temperatura en ºF del meteorito Armagedon es de: ' + Meteoritos.obtenerTemperaturaF(meteorito1.temperatura) + ' grados.')

}
  </script>
</head>
<body>
<div onclick="start()">Dame tu fuerza pegaso</div>
</body>
</html>
Título: Re:static Javascript. Propiedades y métodos estáticos. Ejercicio Resuelto CU01148E
Publicado por: Mario R. Rancel en 09 de Agosto 2016, 21:21
Buenas tardes Salvador, veo el ejercicio bien resuelto. Tan solo indicarte que para darle coherencia a los nombres en lugar de function Meteoritos sería preferible function Meteorito, de ese modo usaríamos new Meteorito en lugar de new Meteoritos, para reflejar que creamos un objeto de tipo Meteorito (que es como se expresa normalmente en programación). Saludos.