js简单实现倒计时功能(2)

/**
   * 倒计时
   * @param {string} 剩余秒数
   * @param {function} 回调函数
   */
  countDown(times,callback){
    let timer = null;
    timer = setInterval(() => {
      if(times > 0){
        let day = Math.floor(times / (60 * 60 * 24));
        let hour = Math.floor(times / (60 * 60)) - (day * 24);
        let minute = Math.floor(times / 60) - (day * 24 * 60) - (hour * 60);
        let second = Math.floor(times) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
        day = `${day < 10 ? '0' : ''}${day}`;
        hour = `${hour < 10 ? '0' : ''}${hour}`;
        minute = `${minute < 10 ? '0' : ''}${minute}`;
        second = `${second < 10 ? '0' : ''}${second}`;
        callback(`${minute}:${second}`)
        times--;
      }else{
        clearInterval(timer);
        callback(false)
      }
    }, 1000);
    if (times <= 0) {
      clearInterval(timer);
      callback(false)
    }
  }

调用方法

countDown(endTime,res => {
   if (res) {
      console.log(res) // 15:00
   }else{
     console.log(res) //倒计时结束
    }
 })
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。