您的位置:首页 > Web前端 > JavaScript

js智能判断闰年平年匹配年月日

2014-05-30 09:57 387 查看

一:需求提出

在从事WEB前端的朋友们,可能经常都会遇到需要在一个规定的时间段内查询日期之类的需求。如下图:



在这里面要根据闰年或平年来智能匹配日期:当年份发生变化的时候,会自动分辨闰年和平年,以此月份和日会自动的进行变化和匹配。

那么这些是怎么实现的呢?





[b][b] [b]blog已经迁移到这里了,有更多文章,欢迎大家访问。 [/b][/b][/b]


[b]完成这个需求需要你掌握以下几个知识点:[/b]

首先显示年月日。怎么显示?

当年或月发生变化的时候,对应的日也要发生变化。比如,如果是闰年2000年,你选择2月的时候,这时候显示日的下拉列表里只能显示1到29天。

判断闰年和平年。怎么判断?

二:代码实现:

1.显示年份

MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
var y = new Date().getFullYear();
for (var i = y; i > (y-30); i--){//以今年为准,向前30年
document.getElementById("YYYY1").options.add(new Option(" "+ i +"", i));
}

2.显示月份

for (var i = 1; i < 13; i++) {
document.getElementById("MM1").options.add(new Option(" " + i + "", i));
}

3.显示日

var n = MonHead[new Date().getMonth()];
//判断如果是二月份,并且是闰年的话,多加1天
if (new Date().getMonth() == 1 && IsPinYear(YYYYvalue)) {
n++;
}
writeDay(n,1);

4:判断闰年,平年

function IsPinYear(year)//判断是否闰平年
{
return(0 == year%4 && (year%100 !=0 || year%400 == 0));
}

5:根据闰年,平年来输出月份对应的天数。

[b]blog已经迁移到这里了,看
详细代码请访问这里

三:显示结果

blog已经迁移到这里了,有更多文章,欢迎大家访问。

1>:默认显示结果为当天的时间:



2>:2月份时候的天数(不是闰年)



3>:2月份时候的天数(是闰年)



以上为核心代码,若有疑问,可留言。

[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息