在网站建设过程中经常会涉及到根据提交的生日时间来自动计算年龄的问题,今天绵阳动力网络为大家介绍用JS根据生日算年龄的方法,涉及javascript操作时间的相关技巧,非常简单实用,需要的朋友可以参考下:
function parseDate(str){
if(str.match(/^\d{4}[\-\/\s+]\d{1,2}[\-\/\s+]\d{1,2}$/)){
return new Date(str.replace(/[\-\/\s+]/i,'/')); }
else if(str.match(/^\d{8}$/)){
return new Date(str.substring(0,4)+'/'+str.substring(4,6)+'/'+str.substring(6));
}
else{
return ('时间转换发生错误!');
}
}
function GetAgeByBrithday(birthday){
var age=-1;
var today=new Date();
var todayYear=today.getFullYear();
var todayMonth=today.getMonth()+1;
var todayDay=today.getDate();
var birthday=parseDate(birthday);
if(parseDate(birthday)!='时间转换发生错误!')
{
birthdayYear=birthday.getFullYear();
birthdayMonth=birthday.getMonth();
birthdayDay=birthday.getDate();
if(todayYear-birthdayYear<0)
{
alert("出生日期选择错误!");
}
else {
if(todayMonth*1-birthdayMonth*1<0)
{
age = (todayYear*1-birthdayYear*1)-1;
}
else
{
if(todayDay-birthdayDay>=0)
{//alert(thisDay+'-'+brithd+"_ddd");
age = (todayYear*1-birthdayYear*1);
}
else
{
age = (todayYear*1-birthdayYear*1)-1;
}
}
}
return age*1;
}
else
{
return -1;
}
}