时间戳使用

   // 获取当前月份时间戳
    getTimeStamp() {
      // 获取时间戳 (本月第一天00.00.00  本月最后一天23.59.59)
      var data = new Date(); //本月
      data.setDate(1);
      data.setHours(0);
      data.setSeconds(0);
      data.setMinutes(0);

      // dateObject 的月份字段,使用本地时间。返回值是 0(一月) 到 11(十二月) 之间的一个整数。
      // 感谢 xiaoli_ya(https://me.csdn.net/li15735929289)的批评指正
      var data1 = new Date(); // 下月
      if (data.getMonth() == 11) {
        data1.setMonth(0);
      } else {
        data1.setMonth(data.getMonth() + 1);
      }
      data1.setDate(1);
      data1.setHours(0);
      data1.setSeconds(0);
      data1.setMinutes(0);
      console.log("本月第一天0点" + data.getTime());
      console.log("本月最后一天23点" + data1.getTime());

      var timeStart = parseInt(data.getTime());
      var timeEnd = parseInt(data1.getTime()) - 1; //(计算下月1号时间戳-1即可)
      this.form.createTimeStart = timeStart; //当前月份第一天
      this.form.createTimeEnd = timeEnd; //当前月份第一天
    },
   /**
     * 获取上月开始、结束时间戳
     * @returns {number[上月开始时间戳,上月结束时间戳]}
     */
    lastMonthTimetamp() {
      //  一天的秒数
      const MillisecondsADay = 24 * 60 * 60;

      const date = new Date();
      date.setDate(1);
      date.setHours(0, 0, 0, 0);
      //  当月开始时间戳
      const timeStamp = date.getTime() / 1000;
      //  上个月的天数
      const days = this.month;
      //  上月开始时间戳
      const lastMonthStart = timeStamp - MillisecondsADay * days;
      //  上月结束时间戳
      const lastMonthEnd = timeStamp - 1;
      // return [lastMonthStart, lastMonthEnd];
      // console.log(lastMonthStart, lastMonthEnd);
      this.form.createTimeStart = lastMonthStart;
      this.form.createTimeEnd = lastMonthEnd;
    },
 /**
     * 上月天数
     * @returns {number}
     */
    lastMonthDats() {
      const date = new Date();
      const year = date.getFullYear();
      //  上个月月份
      let month = date.getMonth() + 1 - 1; //  0-11 表示 1月-12月
      //  0 表示12月
      month = month || 12;
      //  30天的月份
      const arr30 = [4, 6, 9, 11];
      //  31天的月份
      const arr31 = [1, 3, 5, 7, 8, 10, 12];
      if (arr30.indexOf(month) !== -1) {
        //  上个月是 30 天
        this.month = 30;
        // return 30;
      } else if (arr31.indexOf(month) !== -1) {
        //  上个月是 31 天
        this.month = 31;
        // return 31;
      } else {
        //  2月
        if (this.isRunYear(year)) {
          this.month = 29;
          // return 29;
        } else {
          return 28;
        }
      }
      this.lastMonthTimetamp();
    },
    /**
     * 是否为闰年
     * @param year
     * @returns {boolean}
     */
    isRunYear(year) {
      //  条件:能被4整除并且不能被100整除,或者被400整除的
      let flag = false;
      if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
        flag = true;
      }
      return flag;
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值