【vue】实现获取当天、当周、当月的区间日期

4 篇文章 0 订阅
data: function () {
    return {
      startDate: '',
      endDate: '',
    }
  }, 
  created: function () {
    var that = this;
    that.getFormatDate(1);//2022-07-05 2022-07-05
    that.getFormatDate(2);//2022-07-03 2022-07-09
    that.getFormatDate(3);//2022-07-01 2022-07-31

  },
  methods: {
    /**
    * 是否已注册过
    * @type {Number} 类型 1:当天 2:当周 3:当月
    */
    getDate(type) {
      var now = new Date();
      var nowDayOfWeek = now.getDay(); //今天本周的第几天 
      var nowDay = now.getDate(); //当前日
      var nowMonth = now.getMonth();
      var nowYear = now.getFullYear(); //当前年
      let startGMT, endGMT;
      if (type == 1) {//当天
        startGMT = now;
        endGMT = now;
      } else if (type == 2) {//当周
        startGMT = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);
        endGMT = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));
      } else if (type == 3) {//当月
        startGMT = new Date(nowYear, nowMonth, 1);
        var days = new Date(nowYear, nowMonth + 1, 0).getDate();//获取当月总共有多少天
        endGMT = new Date(nowYear, nowMonth, days);
      }
      this.startDate = this.formatDate(startGMT);
      this.endDate = this.formatDate(endGMT);
    },
    
    //格式化日期
    formatDate(date) {
      var year = date.getFullYear();
      var month = date.getMonth() + 1;
      var day = date.getDate();
      return `${year}-${this.formatFillDate(month)}-${this.formatFillDate(day)}`;
    },
    
    //补全0
    formatFillDate(data) {
      return data < 10 ? '0' + data : data;
    },
 }
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值