js 当前月份的前几个月以及如果前几个月存在跨年情况

需求:后端接口返回一个数字,比如i=3,前端允许过去3个月及当前月都允许调整页面内容

思路:把符合条件的年月放到一个数组中,如果页面选择的年月在这个数组中,满足条件

代码: 

      const monthArr = []
      const data = new Date()
      data.setMonth(data.getMonth() + 1, 1)// 获取到当前月份,设置月份
      for (let i = 0; i <= this.monthSetting; i++) {// monthSetting是接口返回的值,比如结果是1,那就是前一个月以及当前月可以修改页面内容
        data.setMonth(data.getMonth() - 1)// 每次循环一次 月份值减1
        const m = data.getMonth() + 1
        // m = m < 10 ? '0' + m : m  这句我注释掉了,因为我要和v-model 选的年月比较,拼接0好麻烦QAQ
        monthArr.push(data.getFullYear() + '-' + (m.toString())) //注释掉上一句的结果就像这样:2023-3,2023-4....
      }
      var str = Year.toString() + '-' + Month.toString()//简单粗暴的拼接,Year,Month是我选的年月
      let condition3 = false
      if (monthArr.includes(str)) {
        condition3 = true
      }

附上我的参考链接:(89条消息) 【function-date】(1)获取过去一年12月份-昨天日期- 获取当前时间节点_前端小云儿的博客-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值