momentjs或dayjs快速实现倒计时

东明兄 2022-07-04
0条评论 262 次浏览
东明兄 2022-07-040条评论 262 次浏览

倒计时和正向计时都是计算时间差,只是开始时间和结束时间对换位置即可。使用momentjs或dayjs可快速实现倒计时。

使用momentjs实现倒计时的例子:
var moment = require('moment'); 

    setInterval(() => {
      let startT = moment(new Date());//获取开始时间
      let endT = moment(new Date("2020/12/20"));//结束时间
      let diffT = endT.diff(startT);//时间差
      let time = `${moment.duration(diffT).hours()} - ${moment.duration(diffT).minutes()} - ${moment.duration(diffT).seconds()}`//格式化为需要的格式 这里是时分秒
      console.log(time)
    }, 1000)

使用dayjs实现的例子:

dayjs 需要导入duration扩展

const dayjs = require('dayjs');
dayjs.extend(require('dayjs/plugin/duration'));

    const startT = dayjs.unix(startTime);
    const endT = dayjs();
    const diff = endT.diff(startT); // 时间差

    const diffHours = dayjs.duration(diff).hours();
    const diffMinutes = dayjs.duration(diff).minutes();
    const diffSeconds = dayjs.duration(diff).seconds();
    // 格式化为需要的格式 这里是时分秒
    console.log(
      `${diffHours !== 0 ? `${diffHours}:` : ''}${diffMinutes < 10 ? `0${diffMinutes}` : diffMinutes}:${
        diffSeconds < 10 ? `0${diffSeconds}` : diffSeconds
      }`,
    );

本文通过 YUQUE WORDPRESS 同步自语雀云端知识库

发表评论

您的电子邮箱地址不会被公开。