javascript - Moment.js 获取 dd :hh:mm:ss format? 中两个日期之间的差异

标签 javascript date momentjs

我正在计算当天晚上 11:59 之前的时间。这是一个例子。

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment.js"></script>
<script>

    setInterval(function() {

        var now = moment();
        var mid = moment();
        mid = mid.endOf('day');

        var diffHours = mid.diff(now, 'hours');
        var diffMinutes = mid.diff(now, 'minutes');
        var diffSeconds = mid.diff(now, 'seconds');

        console.log(diffHours + "h " + diffMinutes + "m " + diffSeconds + "s");

    }, 1000)

</script>

但是,我希望它会显示一个时间,例如 20h 13m 49s,但我得到的是 20h 1255m 73500s

我知道这几乎按预期工作,但我怎样才能实现我正在寻找的格式?

最佳答案

您需要在每个 diff 之后修改您的 now 变量。

var hours = mid.diff(now, 'hours'); //Get hours 'till end of day
now.hours(now.hours() + hours);
var minutes = mid.diff(now, 'minutes');

关于javascript - Moment.js 获取 dd :hh:mm:ss format? 中两个日期之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28657113/

相关文章:

python - python中不同格式日期的正则表达式

objective-c - Objective-C 中的星期几

javascript - Moment js 检查某个起始日期和截止日期是否在本周

javascript - 计算日期之间的特定工作日并排除 Javascript 中的假期

javascript - 更改js关联数组中的键

c# - 两个日期之间的月差

javascript - 如何验证 url 地址并确保它至少包含 javascript 中 url 的一部分?

javascript - 使用 moment js 获取去年的同一个周末

javascript - 创建数据的多维数组不会在 javascript 上生成数组

javascript - 当 css 来自云或 cdn 时,如何为 CSS 设置回退 URL