vue 日期格式化 获取两个日期相差天数

本文介绍如何在Vue应用中将日期转换为'yyyy-mm-dd hh:mm:ss'格式,并详细阐述如何计算两个日期之间的相差天数,助力前端开发中的日期处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将时间转化为yyyy-mm-dd hh:mm:ss 格式

    //格式化时间
    formatTime (date, type = 1) {
      if (!(date instanceof Date)) {
        date = new Date(date)
      };
      const curDate = new Date();
      const curYear = curDate.getFullYear();
      const curMonth = curDate.getMonth() + 1;
      const curDay = curDate.getDate();
      const year = date.getFullYear();
      const month = date.getMonth() + 1;
      const day = date.getDate();
      const hour = date.getHours();
      const minute = date.getMinutes();
      const second = date.getSeconds();
      if (type === 1) {
        return [year, month, day].map(this.formatNumber).join('-') + ' ' + [hour, minute, second].map(this
          .formatNumber).join(':')
      } else if (type === 2) {
        return [year, month, day].map(this.formatNumber).join('-')
      } else if (type === 3) {
        return [year, month, day].map(this.formatNumber).join('-') + ' ' + [hour, minute].map(this.formatNumber)
          .join(':')
      } else if (type === 4) {
        return [hour, minute].map(this.formatNumber).join(':')
      } else if (type === 5) {
        return year + '年' + this.formatNumber(month) + '月' + this.formatNumber(day) + '日'
      } else if (type === 6) {
        return this.formatNumber(hour) + ':' + this.formatNumber(minute)
      } else if (type === 7) {
        return this.formatNumber(month) + '月' + this.formatNumber(day) + '日'
      }
    },
    //格式化数字
    formatNumber (n) {
      n = n.toString()
      return n[1] ? n : '0' + n
    },

获取两个日期相差天数

    getTime () {
      if (this.form.beginTime && this.form.endTime) {
        var beginTime = this.formatTime(this.form.beginTime, 1);
        var endTime = this.formatTime(this.form.endTime, 1);
        var dateBegin = new Date(beginTime);
        var dateEnd = new Date(endTime);
        if (dateBegin.getTime() > dateEnd.getTime()) {
          this.form.beginTime = null;
          this.form.endTime = null;
          alert("开始时间不能大于结束时间!")
          return;
        }
        this.difference(dateBegin, dateEnd);
      }
    },
    difference (dateBegin, dateEnd) {
      var dateDiff = dateEnd.getTime() - dateBegin.getTime();//时间差的毫秒数
      var dayDiff = Math.ceil(dateDiff / (24 * 3600 * 1000));//计算出相差天数
      this.form.alltime = dayDiff;
    },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值