倒计时与时间戳

<template>
  <div class="hello">
     {{time}}
     {{times}}
  </div>
</template>
<script>
import moment from 'moment'
export default {
  data () {
    return {
      // time: Date.parse(new Date()), //精确到秒
      time: (new Date()).valueOf(), // 获取到具体的毫秒值
      // time: new Date().getTime(), //获取到具体的毫秒值
      times: null
    }
  },
  methods: {
    // 此处转化时间戳
    getTime () {
      let s = new Date(this.time)
      console.log(s, 's==')
      // 转化时间
      // 第一种方法 使用moment
      this.times = moment(s).format('HH:mm:ss')
      // 第二种方法 分别获取时分秒 其中使用到es6的新增语法padStart
      // padStart()的常见用途是为数值补全指定位数 例如以下使用就是当不足两位时前面补0
      // 其中还有padEnd() 常见用途为尾部补全
      // 两种方法如果原字符串的长度,等于或者大于指定的最小长度,则返回原字符串,如果省略第二个参数,则返回空格
      let hour = (s.getHours()).toString().padStart(2, '0')
      let minutes = (s.getMinutes()).toString().padStart(2, '0')
      let seconds = (s.getSeconds()).toString().padStart(2, '0')
      console.log('当前时间为:' + hour + ':' + minutes + ':' + seconds)
    },
    // 倒计时
    toTime () {
      let sTime = new Date(this.time).valueOf()
      setInterval(() => {
        let sTime = new Date()
        //   let eTime = new Date('Feb 01 2022 00:00:00')
        let eTime = new Date('Dec 10 2021 00:00:00')
        let residue = eTime.getTime() - sTime.getTime()
        let residueDay = parseInt(residue / (60 * 60 * 24 * 1000)).toString().padStart(2, '0')
        let haomiao1 = parseInt(residue) - parseInt(residueDay * 60 * 60 * 1000) // 除去天的毫秒数
        let residueHour = parseInt(haomiao1 / (60 * 60 * 1000)).toString().padStart(2, '0')
        let haomiao2 = haomiao1 - residueHour * 60 * 60 * 1000 // 除去天/小时的毫秒数
        let residueMinute = parseInt(haomiao2 / (60 * 1000)).toString().padStart(2, '0')
        let haomiao3 = haomiao2 - residueMinute * 60 * 1000 // 除去天、小时、分的毫秒数
        let haomiao4 = parseInt(haomiao3 / 1000) // 除去天、小时、分的毫秒数转化为秒
        this.times = residueDay + '天' + residueHour + '小时' + residueMinute + '分钟' + haomiao4 + '秒'
      }, 1000)
      if (sTime < 0) {
        this.times = '倒计时结束'
      }
    }

  },
mounted () {
    this.getTime()
    this.toTime()
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您想要将一个时间戳转换为倒计时格式吗?比如将未来某个时间点的时间戳转换为距离该时间点还有多少天、小时、分钟和秒。如果是这样的话,您可以按照以下步骤进行操作: 1. 获取当前时间戳:使用time.time()函数可以获取当前时间戳。 2. 获取未来时间戳:根据您的需求,可以使用datetime.datetime()类构造一个表示未来某个时间点的datetime对象,并使用其timestamp()方法获取对应的时间戳。 3. 计算倒计时:将未来时间戳减去当前时间戳,得到距离该时间点的时间差。然后,可以将时间差转换为倒计时格式,例如,将总秒数除以3600可以得到小时数,将小时数除以24可以得到天数,以此类推。 4. 显示倒计时:根据需要,您可以将倒计时格式输出到屏幕或者网页上。 以下是一个示例代码,它将未来的2022年1月1日0时0分0秒的时间戳转换为倒计时格式并输出到屏幕上: ``` import time import datetime # 获取当前时间戳 now = time.time() # 构造未来时间点的datetime对象 future = datetime.datetime(2022, 1, 1, 0, 0, 0) # 获取未来时间点的时间戳 future_timestamp = future.timestamp() # 计算倒计时 delta = int(future_timestamp - now) days = delta // 86400 hours = (delta % 86400) // 3600 minutes = (delta % 3600) // 60 seconds = delta % 60 # 输出倒计时 print("距离2022年1月1日0时0分0秒还有:{}天{}小时{}分钟{}秒".format(days, hours, minutes, seconds)) ``` 输出结果为: ``` 距离2022年1月1日0时0分0秒还有:327天21小时57分钟51秒 ``` 您可以根据需要修改代码中的日期和时间来计算其他时间点的倒计时。希望这可以帮助到您!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值