需求分析:某年某月的第一天都是一样的,但是某年和某月的最后一天有可能 28,29,也有可能 30,或者 31。这里可以指的某年某月的最后一天是其下一个月第一天的前一天。
// 获取某年某月的最后一天
getLastDayOfMonth(year,month){
var date = new Date(year,month-1,'01');
//设置日期
date.setDate(1);
//设置月份
date.setMonth(date.getMonth() + 1);
//获取本月的最后一天
cdate = new Date(date.getTime() - 1000*60*60*24);
//返回结果
return cdate.getDate();
},
如何获取当月的第一天和最后一天呢?
上面通过传入年月来获取获取最后一天,那当月的最后一天也可以根据下月第一天的前一天来获取。
// 获取当前月的 第一天 和 最后一天
function getCurrentMonthLast(){
var date=new Date();
date.setDate(1);
var nextMonthFirstDay = new Date(date.getFullYear(),date.getMonth() + 1,1);
return [date, new Date(nextMonthFirstDay - 1000*60*60*24)];
}
如何获取当前日期前 N 天的日期呢?
//时间
getTimeYear(n) {
var now = new Date;
now.setDate(now.getDate() - n);
return now;
},
this.getTimeYear(365)