在 JavaScript 中,如何计算具有不同日期的 24 小时格式的两个时间之间的差异?
示例: 日期 1 是 2019/12/31 11:00:06 AM 日期 2 是 2020 年 1 月 1 日下午 01:10:07。 时差应为 hh:MM:ss 格式的 02:10:13 ..当appscript中的日期发生变化时怎么会变成这样
最佳答案
只需使用日期
const dateDiffMs = (date1,date2 ) => {
const d1 = new Date(date1);
const d2 = new Date(date2);
return d1.getTime() - d2.getTime()
}
const ms2hms = (ms) => {
const sec = Math.floor(ms / 1000)
const min = Math.floor(sec / 60)
const h = Math.floor(min / 60)
return [
h,
min % 60,
sec % 60,
];
};
const format = (n) => n < 10 ? '0' + n : n;
const hms2str = ([h, min, sec]) => {
return `${h}:${format(min)}:${format(sec)}`
}
alert(hms2str(ms2hms(dateDiffMs('2020/01/01 01:10:07 PM', '2019/12/31 11:00:06 AM')))); // 26:10:01
如果 date1 和 date2 位于同一时区,则此代码可以正常工作。但我建议您使用 moment.js 或其他一些库
关于javascript - 如何计算不同日期的 24 小时格式的两个时间之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59615798/