因业务需要获得本周、上周时间段,本来懒的写,网上搜索了下,很多都不是从周一至周日座位一个时间周期段,然后自己写了下。
/*************************************
* 获得本周一
* 按周一至周日为一个时间段
* var d = new Date();
* d.getFirstDayOfWeek(lastWeekNum);
* @param lastWeekNum tinyint 在本周日上减去的天数,为空或0,获得本周一 00:00:00
*************************************/
Date.prototype.getFirstDayOfWeek = function(lastWeekNum) {
var d = (new Date(this.setDate(this.getDate() - this.getDay()+ (this.getDay() == 0 ? -6:1) )));
if (lastWeekNum) {
if (isNaN(lastWeekNum)) lastWeekNum = 7;
d = d.setDate(d.getDate()-lastWeekNum);
d = new Date(d);
}
return d.getFullYear()+'-'+ (d.getMonth()+1) +'-'+ d.getDate()+' 00:00:00';
}
/*************************************
* 获得本周日
* 按周一至周日为一个时间段
* var d = new Date();
* d.getLastDayOfWeek(lastWeekNum);
* @param lastWeekNum tinyint 在本周日上减去的天数,为空或0,获得本周日23:59:59
*************************************/
Date.prototype.getLastDayOfWeek = function(lastWeekNum) {
var d = (new Date(this.setDate(this.getDate() - this.getDay() +7)));
if (lastWeekNum) {
if (isNaN(lastWeekNum)) lastWeekNum = 7;
d = d.setDate(d.getDate()-lastWeekNum);
d = new Date(d);
}
return d.getFullYear() +'-'+ (d.getMonth()+1) +'-'+ d.getDate()+' 23:59:59';
}