计算两个时间相差多少小时、分钟、秒

实现目的

计算出两个时间之间相差的多少小时、分钟、秒。

例如: 2023/4/26 17:10 和 2023/4/26 18:21 之间相差了 1小时10分1秒(01:10:01)

实现代码

function calculateTimeDiff(initTime, nowTime) {
  // 获得相差的秒数
  let defTime = moment(nowTime).diff(moment(initTime), "seconds");

  // 如果相差的时间不足一分钟
  if (defTime < 60) {
    if (defTime < 10) {
      return "00:00:0" + defTime;
    } else {
      return "00:00:" + defTime;
    }
  } else {
    // 获取相差的分钟数
    let min_total = Math.floor(defTime / 60);
    // 获取相差的秒数
    let sec =
      Math.floor(defTime % 60) > 9
        ? Math.floor(defTime % 60)
        : "0" + Math.floor(defTime % 60);

    // 相差时间不足一小时
    if (min_total < 60) {
      return "00:" + min_total + ":" + sec;
    } else {
      // 计算相差的小时数
      let hour_total =
        Math.floor(min_total / 60) > 9
          ? Math.floor(min_total / 60)
          : "0" + Math.floor(min_total / 60);

      let min =
        Math.floor(min_total % 60) > 9
          ? Math.floor(min_total % 60)
          : "0" + Math.floor(min_total % 60);

      return hour_total + ":" + min + ":" + sec;
    }
  }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁什么鸭,

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值