关于时间的几个常用方法

计算30min后的时间

// 订单关闭时间
closeOrder(value) {
    var time = new Date(value)
    var b = 30 //分钟数
    time.setMinutes(time.getMinutes() + b, time.getSeconds(), 0)
    var date = time
    var year = date.getFullYear()
    var month = date.getMonth() + 1 > 9 ? date.getMonth() + 1 : '0' + (date.getMonth() + 1)
    var day = date.getDate() > 9 ? date.getDate() : '0' + date.getDate()
    // var todayDate = year + '-' + month + '-' + day
    var hour = date.getHours() > 9 ? date.getHours() : '0' + date.getHours()
    var min = date.getMinutes() > 9 ? date.getMinutes() : '0' + date.getMinutes()
    var sec = date.getSeconds() > 9 ? date.getSeconds() : '0' + date.getSeconds()
    var afterDate = year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + sec
    timer.value = setInterval(() => {
        showtime(afterDate)
    })
}

计算n天后的时间

// 自动收货时间
GetDateStr(value, AddDayCount) {
    var dd = new Date(value);
    dd.setDate(dd.getDate() + AddDayCount); //获取AddDayCount天后的日期 
    var y = dd.getFullYear();
    var m = (dd.getMonth() + 1) < 10 ? "0" + (dd.getMonth() + 1) : (dd.getMonth() + 1); //获取当前月份的日期,不足10补0 
    var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate(); //获取当前几号,不足10补0 
    var hour = dd.getHours() > 9 ? dd.getHours() : '0' + dd.getHours()
    var min = dd.getMinutes() > 9 ? dd.getMinutes() : '0' + dd.getMinutes()
    var sec = dd.getSeconds() > 9 ? dd.getSeconds() : '0' + dd.getSeconds()
    var data = y + "-" + m + "-" + d + ' ' + hour + ':' + min + ':' + sec;
    timer.value = setInterval(() => {
        showtime(data)
    })
},

倒计时

// 倒计时
showtime(time) {
    var nowtime = new Date(), //获取当前时间
    endtime = new Date(time); //定义结束时间
    var lefttime = endtime.getTime() - nowtime.getTime(), //距离结束时间的毫秒数
    leftd = Math.floor(lefttime / (1000 * 60 * 60 * 24)), //计算天数
    lefth = Math.floor(lefttime / (1000 * 60 * 60) % 24) < 10 ? "0" + Math.floor(
                        lefttime /
                        (1000 * 60 * 60) % 24) : Math.floor(lefttime / (1000 * 60 * 60) % 24), //计算小时数
    leftm = Math.floor(lefttime / (1000 * 60) % 60) < 10 ? "0" + Math.floor(lefttime / (1000 *
                        60) % 60) :
                    Math.floor(lefttime / (1000 * 60) % 60), //计算分钟数
    lefts = Math.floor(lefttime / 1000 % 60) < 10 ? "0" + Math.floor(lefttime / 1000 % 60) : Math
                    .floor(
                        lefttime / 1000 % 60); //计算秒数
    countdownd.value = leftd //返回倒计时的字符串
    countdownh.value = lefth //返回倒计时的字符串    
    countdownm.value = leftm //返回倒计时的字符串
    countdowns.value = lefts //返回倒计时的字符串
    // // 倒计时结束时,显示00:00:00
    if (lefttime < 0) {
        countdownh.value = countdownm.value = countdowns.value = "00"
        return
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值