usando Javascript podemos calcular la edad facilmente
function Edad(FechaNacimiento) {
var fechaNace = new Date(FechaNacimiento);
var fechaActual = new Date()
var mes = fechaActual.getMonth();
var dia = fechaActual.getDate();
var año = fechaActual.getFullYear();
fechaActual.setDate(dia);
fechaActual.setMonth(mes);
fechaActual.setFullYear(año);
edad = Math.floor(((fechaActual - fechaNace) / (1000 * 60 * 60 * 24) / 365));
return edad;
}
Usando esta función podemos obtener la edad sabiendo la fecha de nacimiento.
Ejemplo supongamos que tenemos un input tipo 'date' en nuestra web
<input type='date' id='fechaNace'>
Nuestra función para calcular la fecha de nacimiento la usaríamos de la siguiente forma
var fecha = document.getElementById('fechaNace').value;
//Ejemplo
// fecha = '1994-06-10';
var edad = Edad(fecha);
//edad = 22;
Ejemplo de uso
HOLA muy bien, una consulta como se hace cuando tienes un campo para introducir la fecha de nacimiento y otro campo para que salga la edad --tipo formulario,
ResponderBorrargracias por tu post :) tu codigo me dio la idea
ResponderBorrarmi codigo es parecido, solo que es a partir de un numero de 6 digitos, si la fecha fuera 701228, es decir 28 de 12 del 70. Ahí les va:
ResponderBorrarfunction micalculodeEdad(fecha) {
//despalillo el carnet de identidad para obtener los primeros 6 digitos
var compl = fecha.substr(0,6);
var ano = compl.substr(0,2);
var mes = compl.substr(2,2);
var dia = compl.substr(4,2);
var hoy = new Date();
//obtengo el año actual
var anohoy = hoy.getFullYear();
//lo conviarto a string para tener los dos primeros digitos
var strnano = anohoy.toString();
// obtengo los dos primeros digitos
var anoactual = strnano.substr(0,2);
//si el año es mayor o igual que el año que obtuve de dos cifras
//y es menor o igual que 99, pos le pongo un 19 delante,
//de lo contrario, pos un 20
if(ano >= anoactual && ano <= 99){
ano = '19'+ano;
}else{
ano = anoactual + ano;
}
// armo la fecha con formato yyy-mm-dd
var fech = ano +'-'+ mes +'-'+ dia;
// obtengo fecha de nacimiento - un dia
var cumpleanos = new Date(fech);
// resto el año actual menos el de nacimiento
var edad = hoy.getFullYear() - cumpleanos.getFullYear();
//resto el mes actual menos el de nacimiento
var m = hoy.getMonth() - cumpleanos.getMonth();
//con esta condición determino si en la fecha actual ya cumplió o no años
if (m < 0 || (m === 0 && hoy.getDate() < cumpleanos.getDate())) {
edad--;
}
// y al fin obtengo la edad!!! jejejeje
return edad;
}
No me sale
ResponderBorrar