JS获取当前月份前12个月的月份数组

// 获取当前月份的前12个月的月份数组
  function getLastYearMonthArray() {
    var d = new Date();
    var result = [];
    // d.setMonth(d.getMonth() + 1);
    for (var i = 0; i < 12; i++) {
      var dd = d.getMonth() // 当前月份
      var m;
      /*
       * 2月份只有18天,所以每月的29,30,31号时显示会出现问题(没有2月份) 因此需要对2月份进行处理。
       */
      if (dd == 2) { // 当获取的当前月份值为2时,直接给定m的值为“02”,然后月份减2,跳过2月份的获取。
        d.setMonth(d.getMonth() - 2);
        m = "02"
      } else if (dd == 0) { // 当获取月份值为0时,先判断已存数组中是否有1月份,若有则先减1再获取月份
        if (i != 0) {
          if ($.inArray(d.getFullYear() + "01", result) != -1) { // 判断是否已存在1月份
            d.setMonth(d.getMonth() - 1);
            m = d.getMonth() + 1;
            m = m < 10 ? "0" + m : m;
          } else { // 若数组中没有1月份,则直接给定m的值为“01”,保存1月份。
            m = "01"
          }
        } else { // 若一月份为第一个,则不显示。
          d.setMonth(d.getMonth() - 1);
          m = d.getMonth() + 1;
          m = m < 10 ? "0" + m : m;
        }
      } else {
        d.setMonth(d.getMonth() - 1);
        m = d.getMonth() + 1;
        m = m < 10 ? "0" + m : m;
      }
      if (i == 0) {
        lastMonth = "" + d.getFullYear() + m;// 获取当月月份
      } else if (i == 11) {
        lastYearLastMonth = "" + d.getFullYear() + m; // 获取去年当月时间
      }
      // 在这里可以自定义输出的日期格式
      result.push(d.getFullYear() + "" + m);
      // result.push(d.getFullYear() + "年" + m + '月');
    }
    // console.info(result)
    return result.reverse(); // 返回反向排列的数组
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值