function fucChedkDate(strValue) //strValue 为要检验的时间日期格式为20070929
{
var intYear = parseInt(strValue.substring(0,4),10); //取年份(比如2007)
var intMonth = parseInt(strValue.substring(4,6),10); //取月份(比如9)
var intDay = parseInt(strValue.substring(6,8),10); //取日(比如29)
var arrayLookup = {'1': 31,'3': 31,'4':30,'5':31,'6':30,'7':31,'8':31,'9':30,'10':31,'11':30,'12':31};
if(arrayLookup[intMonth] != null)
{
if(intDay > arrayLookup[intMonth] && intDay != 0)
{
//alert("查询时间中日期有误");
return 0;
}
}
if(intMonth-2 == 0)
{
var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
if(((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
{
return 1;
}
else
{
//alert("查询时间2月中日期有误");
return 0;
}
}
}
{
var intYear = parseInt(strValue.substring(0,4),10); //取年份(比如2007)
var intMonth = parseInt(strValue.substring(4,6),10); //取月份(比如9)
var intDay = parseInt(strValue.substring(6,8),10); //取日(比如29)
var arrayLookup = {'1': 31,'3': 31,'4':30,'5':31,'6':30,'7':31,'8':31,'9':30,'10':31,'11':30,'12':31};
if(arrayLookup[intMonth] != null)
{
if(intDay > arrayLookup[intMonth] && intDay != 0)
{
//alert("查询时间中日期有误");
return 0;
}
}
if(intMonth-2 == 0)
{
var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
if(((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
{
return 1;
}
else
{
//alert("查询时间2月中日期有误");
return 0;
}
}
}
本文介绍了一个用于验证特定格式(如20070929)的日期字符串有效性的JavaScript函数。该函数能够准确判断输入的日期是否符合公历规则,并特别处理了闰年的特殊情况。
&spm=1001.2101.3001.5002&articleId=1331171&d=1&t=3&u=e4d10517b7124aa9b6219c587111b8c0)
4182

被折叠的 条评论
为什么被折叠?



