javascript - 超过24小时的Moment js格式失败

标签 javascript momentjs

我尝试在 24 小时内将 momentjs 格式化为 hh:mm:ss 但我只有 1 小时,所以我尝试过

 const start = moment('2019-02-27 00:00');
 const end = moment('2019-03-01 01:00');
 var diff =end.diff(start, 'seconds', true)

 let ff = moment.utc((diff) * 1000).format('HH:mm:ss')

 console.log(ff)

在上面我期望得到

49:00:00

因为是两天零 1 小时所以 24*2因为每天有 24 小时加上 00:0 到 01:00 的一小时

如图所示,我哪里出错了01:00:00而不是 49:00:00

最佳答案

也遇到了同样的问题,这是我的代码片段,如果这对您有帮助。

let start = moment('2019-03-01 00:00:00');
let stop = moment();

const formatTimespan = (start, stop) => {
  const diff = stop.diff(start, "hours", true);

  const hours = Math.floor(diff);
  const step = 60 * (diff - hours)
  let mins = Math.floor(step)
  let secs = Math.floor(60 * (step - mins));
  mins = mins.toString().padStart(2, "0");
  secs = secs.toString().padStart(2, "0");
  return `${hours}:${mins}:${secs}`;  
}

console.log(formatTimespan(start, stop));

关于javascript - 超过24小时的Moment js格式失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55063195/

相关文章:

javascript - Selectize.js 和 jQuery 验证

javascript - 在 Javascript 中通过页面刷新维护对弹出窗口的引用

javascript - jQuery 数据表 : is there a way to detect date format automatically?

ruby-on-rails - 将 MomentJS 格式化为 Rails DateTime

Javascript Date 使用 UTC 时间来校正 GMT 时间

javascript - 使用字符串模板代替 HTML 文件

javascript - 如何确定是否已从 javascript 为 WPF WebBrowser 控件设置了 ObjectForScripting?

jquery - 日期范围选择器无法正常工作

javascript - JS 日期 : Add 0 in front of every single day or month

javascript - Moment.js - 我正在解析日期但它仍然提示