共计 1044 个字符,预计需要花费 3 分钟才能阅读完成。
对于 js 中的 Date 对象,我们 new Date()后做的最多的操作就是 getTime()、getFullYear()、getMonth()、getSecond(),在实际开发中几乎很少会用到 getDate()这个方法,因为应用场景太少了。在工作中我们经常会需要判断某个年份是否是闰年这个需求,以前我们都是使用一套公式算出来的,这个方法比较麻烦,并且公式还记不住。getDate()方法就是我们的福音,用它可以很方便的实现判断闰年的需求!
1.1、getDate()方法的使用
new Date()方法可以传递 3 个参数,如:new Date(年, 月, 数字);
1、new Date()第三个参数为 0 或为负数
/* 28,表示获取 2018 年 2 月份的最后一天,即获取 2018 年 2 月份的倒数第一天。*/
new Date(2018,2,0); // 28
new Date(2018,2,-1); // 27
new Date(2018,2,-2); // 26
new Date(2018,4,0); // 30
new Date(2020,2,0); // 29
1.2、new Date()第三个参数为正数 当第三个参数为正数时表示获取该数字在 (月份 +1) 中的第几天,如果数字大于 (月份 +1) 的最大天数,则月份往下再加 1,然后再进行计算。
/* 25,表示获取 2018 年 4 月份 25 日在当月中的序号 */
new Date(2018,3,25); // 25
/* 1,因为 4 月份没有 31 号,因此月份再加 1,序号变为 31-30(30 为 4 月份最大天数),即获取的是 5 月份 1 号在 5 月份中的序号 */
new Date(2108,3,31); // 1
new Date(2108,3,32); // 2
2、判断年份是否是闰年
2.1、使用 getDate()方法判断年份是否为闰年
/* 当 new Date()第三个参数为 0 时可以获取 2018 年 2 月份的最后一天,如果 2 月份的最后一天是 29,那么该年就是闰年 */
var days = new Date(2018,2,0); // 28
if(days == 29){
console.log(“2018 年是闰年 ”);
}else{
console.log(“2018 年不是闰年 ”);
}
2.2、使用公式计算是否是闰年
var year = new Date().getFullYear();
if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){
console.log(year + “ 年是闰年 ”);
}else{
console.log(year + “ 年不是闰年 ”);
}