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

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(28){ 
            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); 
}

你可能感兴趣的:(获取本周、本季度、本月、上月的开始日期、结束日期)