getDate要领的妙用(js推断闰年)

关于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 + "年不是闰年");
}
    原文作者:heath_learning
    原文地址: https://segmentfault.com/a/1190000017748506
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞