js倒计时

71 阅读1分钟

这篇文章是用来记录自己写倒计时的实现代码的
具体代码如下:

let endTime = new Date(2023,10,8,14,30,0)
setInterval(()=>{
    console.clear()
    let startTime = new Date()
    let count = endTime - startTime
    if(count < 0) count = 0
    let second = Math.floor(count/1000)
    let minute = Math.floor(second/60)
    second = second % 60
    let hour = Math.floor(minute/60)
    minute = minute % 60
    second = format(second)
    minute = format(minute)
    hour = format(hour)
    console.log(`倒计时  ${hour}:${minute}:${second}`)
},1000)

function format(time){
    return time < 10 ? '0' + time : time
}

更好的处理方法是将该代码块封装成一个函数,函数通过参数接收一个倒计时结束时间,然后通过函数内部计算倒计时剩余时间,当需要计算倒计时时使用封装的函数即可,但是我现在不想封装了。

基本逻辑比较简单,应该没有什么比较难的地方。

吐槽

js中Date对象有自己的方法获取当前日期的年月日

  • 获取年:Date.getFullYear()
  • 获取月:Date.getMonth()
  • 获取日:Date.getDate()
  • 获取周:Date.getDay()

这个获取日就属实是不合规律,用习惯了也还好,但是我还是想吐槽一下。