获取本周、本季度、本月、上月的开始日期、结束日期

var now = new Date(); //当前日期 
var nowDayOfWeek = now.getDay(); //今天本周的第几天 
var nowDay = now.getDate(); //当前日 
var nowMonth = now.getMonth(); //当前月 
var nowYear = now.getYear(); //当前年 
nowYear += (nowYear < 2000) ? 1900 : 0; 
var lastMonthDate = new Date(); //上月日期
lastMonthDate.setDate(1);
lastMonthDate.setMonth(lastMonthDate.getMonth()-1);
var lastYear = lastMonthDate.getYear();
var lastMonth = lastMonthDate.getMonth();

格式化日期:yyyy-MM-dd

function formatDate(date) { 
    var myyear = date.getFullYear(); 
    var mymonth = date.getMonth()+1; 
    var myweekday = date.getDate();
    if(mymonth < 10){ 
        mymonth = "0" + mymonth; 
    } 
        if(myweekday < 10){ 
        myweekday = "0" + myweekday; 
       } 
      return (myyear+"-"+mymonth + "-" + myweekday); 
} 

获得某月的天数

function getMonthDays(myMonth){ 
    var monthStartDate = new Date(nowYear, myMonth, 1); 
    var monthEndDate = new Date(nowYear, myMonth + 1, 1); 
    var days = (monthEndDate - monthStartDate)/(1000 * 60 * 60 * 24); 
     return days; 
} 

获得本季度的开始月份

function getQuarterStartMonth(){ 
    var quarterStartMonth = 0; 
        if(nowMonth<3){ 
        quarterStartMonth = 0; 
    } 
    if(2<nowMonth && nowMonth<6){ 
        quarterStartMonth = 3; 
    } 
    if(5<nowMonth && nowMonth<9){ 
         quarterStartMonth = 6; 
        } 
    if(nowMonth>8){ 
            quarterStartMonth = 9; 
    } 
     return quarterStartMonth; 
}

获得本周的开始日期

function getWeekStartDate() { 
    var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek); 
    return formatDate(weekStartDate); 
} 

获得本周的结束日期

function getWeekEndDate() { 
    var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek)); 
    return formatDate(weekEndDate); 
} 

获得本月的开始日期

function getMonthStartDate(){ 
     var monthStartDate = new Date(nowYear, nowMonth, 1); 
     return formatDate(monthStartDate); 
} 

获得本月的结束日期

function getMonthEndDate(){ 
    var monthEndDate = new Date(nowYear, nowMonth, 
 getMonthDays(nowMonth)); 
     return formatDate(monthEndDate); 
}

获得上月开始时间

function getLastMonthStartDate(){
    var lastMonthStartDate = new Date(nowYear, lastMonth, 1);
        return formatDate(lastMonthStartDate); 
}

获得上月结束时间

function getLastMonthEndDate(){
        var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth));
     return formatDate(lastMonthEndDate); 
}

获得本季度的开始日期

function getQuarterStartDate(){ 
    var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1); 
    return formatDate(quarterStartDate); 
} 

获的本季度的结束日期

function getQuarterEndDate(){ 
    var quarterEndMonth = getQuarterStartMonth() + 2; 
    var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth)); 
    return formatDate(quarterStartDate); 
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容