我尝试在 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/