function isValidDate(dateStr){
var parts;
if (dateStr.indexOf("-") > -1){
parts = dateStr.split('-');
} else{
return false;
}
//else if(dateStr.indexOf("/") > -1){
// parts = dateStr.split('/');
//}
if(parts.length < 3){
//日期部分不允许缺少年、月、日中的任何一项
return false;
}
for(i = 0 ;i < 3; i ++){
//如果构成日期的某个部分不是数字,则返回false
if(isNaN(parts[i])){
return false;
}
}
y = parts[0];//年
m = parts[1];//月
d = parts[2];//日
if(y > 3000){
return false;
}
if(m < 1 || m > 12){
return false;
}
switch(d){
case 29:
if(m == 2){
//如果是2月份
if( (y / 100) * 100 == y && (y / 400) * 400 != y){
//如果年份能被100整除但不能被400整除 (即闰年)
}else{
return false;
}
}
break;
case 30:
if(m == 2){
//2月没有30日
return false;
}
break;
case 31:
if(m == 2 || m == 4 || m == 6 || m == 9 || m == 11){
//2、4、6、9、11月没有31日
return false;
}
break;
default:
}
return true;
}
JS 校验日期格式 YYYY-MM-DD (转)
最新推荐文章于 2023-08-10 20:49:55 发布