Foros del Web » Programando para Internet » Javascript »

Como calcular mi edad

Estas en el tema de Como calcular mi edad en el foro de Javascript en Foros del Web. Buenas a todos como os comente estoy haciendo un curso de programación web ahora mismo estoy en el comienzo de Javascript. Estoy en la introducción ...
  #1 (permalink)  
Antiguo 28/09/2009, 05:59
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Como calcular mi edad

Buenas a todos como os comente estoy haciendo un curso de programación web ahora mismo estoy en el comienzo de Javascript.

Estoy en la introducción y presentación pero me he quedado el primer ejercicio donde tengo que hacer una operación de calcular mi edad,intente hacer el ejercicio y no me sale el resultado,no es que me salga erróneo si no que (no sale nada en el navegador cuando hago la prueba)

esto es lo que escribo:

Código:
<html>
<head>
<title>Pruebas</title>
</head>
<body>
<p>Este es un ejemplo para calcular mi edad actual:</p>
<script languaje="javascript" type="text/javascript">
añoNacimiento = 1983
añoActual = 2009
añoNaciemnto - añoActual
miEdad = añoActual - añoNacimento
miEdad = 26
</script>
</body>
</html>
no se si es hago algo mal o me falta algo,espero que me podáis echar una mano,gracias desde ya

pd...perdonar si he repetido el tema pero he mirado otros tipos de dudas y no se me parecían

Salu2
  #2 (permalink)  
Antiguo 28/09/2009, 08:29
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Como calcular mi edad

Hola

Claro que no se imprime nada ¿Donde estás la función y el evento que lanza la función y ....?

Prueba con esto

Código javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta name="http-equiv" content="Content-type: text/html; charset=UTF-8"/>
  5. <script type="text/javascript">
  6. function calcular_edad(opt1,opt2,opt3) {
  7. var dia, mes, anyo
  8. if (opt1 == "") {dia = document.forma28.dia.options[document.forma28.dia.selectedIndex].value;} else { dia = opt1;}
  9. if (opt2 == "") {mes = document.forma28.mes.options[document.forma28.mes.selectedIndex].value;} else { mes = opt2;}
  10. if (opt3 == "") {anyo = document.forma28.ano.options[document.forma28.ano.selectedIndex].value;} else { anyo = opt3;}
  11.  
  12. alert("Dia " +dia+ " Mes " +mes+ " Anyo " +anyo)
  13.  
  14. var nacimiento =new Date(anyo, mes, dia)
  15. hoy = new Date()
  16. var cuantos_dias =1000*60*60*24*365
  17. document.getElementById("edad").value = (Math.ceil((hoy.getTime()-nacimiento.getTime())/(cuantos_dias))-1);
  18. }
  19. </script>
  20. </head>
  21. <body>
  22. <center> REGISTRO </center>
  23. <center>
  24.         <form name="forma28" action="index.php?mod=jugadores&pag=guardar" id="forma28" method="post" onSubmit="return validar_jugador(this)" >
  25.          <table border="0" align="center"   id="gradient-style">
  26.            
  27.                 <tr>
  28.                 <td> Fecha de Nacimiento </td>
  29.                 <td> <select name="dia" size="5" onchange="calcular_edad(this.options[this.selectedIndex].value,'','');">
  30.             <option value=""> D&Iacute;A</option>
  31.             <option value="1" selected> 1</option>
  32.             <option value="2"> 2</option>
  33.             <option value="3"> 3</option>
  34.             <option value="4"> 4</option>
  35.             <option value="5"> 5</option>
  36.             <option value="6"> 6</option>
  37.             <option value="7"> 7</option>
  38.             <option value="8"> 8</option>
  39.             <option value="9"> 9</option>
  40.             <option value="10"> 10</option>
  41.             <option value="11"> 11</option>
  42.             <option value="12"> 12</option>
  43.             <option value="13"> 13</option>
  44.             <option value="14"> 14</option>
  45.             <option value="15"> 15</option>
  46.             <option value="16"> 16</option>
  47.             <option value="17"> 17</option>
  48.             <option value="18"> 18</option>
  49.             <option value="19"> 19</option>
  50.             <option value="20"> 20</option>
  51.             <option value="21"> 21</option>
  52.             <option value="22"> 22</option>
  53.             <option value="23"> 23</option>
  54.             <option value="24"> 24</option>
  55.             <option value="25"> 25</option>
  56.             <option value="26"> 26</option>
  57.             <option value="27"> 27</option>
  58.             <option value="28"> 28</option>
  59.             <option value="29"> 29</option>
  60.             <option value="30"> 30</option>
  61.          </select>
  62.               <select name="mes" size="5" onchange="calcular_edad('',this.options[this.selectedIndex].value,'');">
  63.                 <option value=""> MES </option>
  64.                 <option value="0" selected> Enero</option>
  65.                 <option value="1"> Febrero</option>
  66.                 <option value="2"> Marzo</option>
  67.                 <option value="3"> Abril</option>
  68.                 <option value="4"> Mayo</option>
  69.                 <option value="5"> Junio</option>
  70.                 <option value="6"> Julio</option>
  71.                 <option value="7"> Agosto</option>
  72.                 <option value="8"> Septiembre</option>
  73.                 <option value="9"> Octubre</option>
  74.                 <option value="10"> Noviembre</option>
  75.                 <option value="11"> Diciembre</option>
  76.               </select>
  77.             <select name="ano"  size="5" onchange="calcular_edad('','',this.options[this.selectedIndex].value);">
  78.                 <option value=""> A&Ntilde;O</option>
  79.                 <option value="74" selected> 1974</option>
  80.                 <option value="75"> 1975</option>
  81.                 <option value="76"> 1976</option>
  82.                 <option value="77"> 1977</option>
  83.                 <option value="78"> 1978</option>
  84.                 <option value="79"> 1979</option>
  85.                 <option value="80"> 1980</option>
  86.                 <option value="81"> 1981</option>
  87.                 <option value="82"> 1982</option>
  88.                 <option value="83"> 1983</option>
  89.                 <option value="84"> 1984</option>
  90.                 <option value="85"> 1985</option>
  91.                 <option value="86"> 1986</option>
  92.                 <option value="87"> 1987</option>
  93.                 <option value="88"> 1988</option>
  94.                 <option value="89"> 1989</option>
  95.                 <option value="90"> 1990</option>
  96.                 <option value="91"> 1991</option>
  97.                 <option value="92"> 1992</option>
  98.                 <option value="93"> 1993</option>
  99.                 <option value="94"> 1994</option>
  100.                 <option value="95"> 1995</option>
  101.                 <option value="96"> 1996</option>
  102.                 <option value="97"> 1997</option>
  103.                 <option value="98"> 1998</option>
  104.                 <option value="99"> 1999</option>
  105.                 <option value="2000"> 2000</option>
  106.                 <option value="2001"> 2001</option>
  107.                 <option value="2002"> 2002</option>
  108.                 <option value="2003"> 2003</option>
  109.                 <option value="2004"> 2004</option>
  110.                 <option value="2005"> 2005</option>
  111.                 <option value="2006"> 2006</option>
  112.                 <option value="2007"> 2007</option>
  113.                 <option value="2008"> 2008</option>
  114.                 </select>
  115.                 </td>
  116.                 </tr>
  117.             <tr>
  118.             <tr>
  119.                 <td>Edad:</td>
  120.                 <td><input type="text" id="edad" name="edad" size="10" maxlength="2">
  121.                 </td>
  122.         </tr>
  123.     </table>
  124.        
  125. </body>
  126. </html>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 28/09/2009, 08:38
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: Como calcular mi edad

Me da la impresion que es un ejercicio que le pusieron en la academia y quiere resolverlo a lo copy-paste xD
  #4 (permalink)  
Antiguo 28/09/2009, 08:42
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Como calcular mi edad

Hola

Cita:
Iniciado por Vun Ver Mensaje
Me da la impresion que es un ejercicio que le pusieron en la academia y quiere resolverlo a lo copy-paste xD
Pues igual que tantos otros
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 29/09/2009, 06:10
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como calcular mi edad

El problema fue que no entendí bien el ejercicio y al parecer es solo hasta ahi sin llegar al resultado final el cual ya daremos mas adelante,yo dando vueltas intentando que me saliera algo en pantalla jejejejej..

Muchas gracias Adler por el ejemplo ;)
  #6 (permalink)  
Antiguo 29/09/2009, 09:30
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 5 meses
Puntos: 56
Respuesta: Como calcular mi edad

Puedes hacer algo mas simple, si el mes y el dia ha pasado se devuelve la resta, si no la resta sin el año cumplido

Código javascript:
Ver original
  1. <script>
  2. function edad(s){
  3.     var A = "-", H = new Date(), Y = H.getFullYear(), M = H.getMonth()+1, D = H.getDate(),
  4.     a = s.split(A), y = a[0], m = a[1], d = a[2], yY = Y - y;
  5.     return (M > m || (m == M && D >= d)) ? yY : yY - 1;
  6. }
  7.  
  8.  
  9. alert(edad("1988-09-31")); // 28 Septiembre de 1988
  10. alert(edad("1988-09-01")); // 1 Septiembre de 1988, ya a cumplido
  11. </script>
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #7 (permalink)  
Antiguo 29/09/2009, 21:50
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como calcular mi edad

gracias America|Unk cuando llegue el momento probare de las dos formas que me habéis indicado aun estoy algo verde


Salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:29.