如何获取到上个季度和下个季度的开始和结束时间

js如何获取到上个季度和下个季度的开始和结束时间。
不要那种插件的。


               /* 获得某月的天数 */
                   function getMonthDays(myMonth) {
                       var nowYear = new Date().getFullYear(); //当前年
                       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 nowMonth = new Date().getMonth();
                      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 getQuarterStartDate() {
                     var now = new Date();
                     var nowYear = now.getFullYear(); //当前年
                     return new Date(nowYear, getQuarterStartMonth(), 1);
                 }
                 /* 获得本季度的结束日期 */
                 function getQuarterEndDate() {
                     var now = new Date();
                     var nowYear = now.getFullYear(); //当前年
                     var quarterEndMonth = getQuarterStartMonth() + 2;
                     return new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
                 }
             
                 /* 获得上个季度的开始日期 */
                 function getLastQuarterStartDate() {
                     var now = new Date();
                     var nowYear = now.getFullYear(); //当前年
                     return new Date(nowYear, getQuarterStartMonth() - 3, 1);
                 }
             
                 /* 获得上个季度的结束日期 */
                 function getLastQuarterEndDate() {
                     var quarterEndMonth = getQuarterStartMonth() - 1;
                     var now = new Date();
                     now.setMonth(quarterEndMonth);
                     var nowMonth = now.getMonth();
                     var nowYear = now.getFullYear();
                     return new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
                 }
                     
                     /* 获得下个季度的开始日期 */
                     function getNextQuarterStartDate() {
                         var now = new Date();
                         var nowYear = now.getFullYear(); //当前年
                         return new Date(nowYear, getQuarterStartMonth() + 3, 1);
                     }
                                  
                     /* 获得下个季度的结束日期 */
                     function getNextQuarterEndDate() {
                         var quarterEndMonth = getQuarterStartMonth() + 5;
                         var now = new Date();
                         now.setMonth(quarterEndMonth);
                         var nowMonth = now.getMonth();
                         var nowYear = now.getFullYear();
                         return new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
                     }
                        console.log('上季度开始=》', getLastQuarterStartDate())
                        console.log('上季度结束=》', getLastQuarterEndDate())
                        console.log('本季度开始=》', getQuarterStartDate())
                        console.log('本季度结束=》', getQuarterEndDate())
                        console.log('下季度开始=》', getNextQuarterStartDate())
                        console.log('下季度结束=》', getNextQuarterEndDate())

判断当前月份属于哪个季度,然后手动赋值上个季度和下个季度的开始和结束时间不行嘛。

那你要知道 当前时间 或者说 以哪个月份 为 准 。 知道了月份 就知道它的 季度 然后确定它的 上季度开始和下季度开始
比如 以六月 为准 它的 上季度 就是 第一季度 也就是 1-3月 。第一季度 就是 1月 1日开始 下个季度 就是第三季度 也就是 7月1日开始

 console.log(S(11))
    function S(month){
      if(!month){
         return 
      };
      var  m=Number(month);
      if(m>0&&m<=3){
         return "上季度开始12月1日 下季度开始4月1日"
      }else if(m>=4&&m<=6){
        return "上季度开始1月1日 下季度开始7月1日"
      }else if(m>=7&&m<=9){
        return "上季度开始4月1日 下季度开始10月1日"
      }else if(m>=10&&m<=12){
        return "上季度开始9月1日 下季度开始1月1日"
      }else{
        return "月份不合法"
      }
    }