Moment.js:减去 2 个日期并格式化结果

为了使用 Moment.js 减去 2 个日期,您可以按照以下步骤操作:

  1. 从您的日期字符串构造时刻日期对象:
const dateOne = moment('2020-12-30 12:00:00');
const dateTwo = moment('2023-12-31 19:30:45');
  1. 假设dateTwo被减数dateOne是被减数。我们将在对象dateTwo上调用 diff() 方法,传入的参数是dateOne
const duration = dateTwo.diff(dateOne);
  1. 默认情况下,结果是毫秒,它被截断到零小数位。如果您想要HH:mm:ss格式的结果,则可以执行以下操作:
const duration = dateTwo.diff(dateOne);
const formattedDuration = moment.utc(duration).format('HH:mm:ss');

您还可以通过将相应的单词作为第二个参数传递来直接将结果指定为yearsmonthsweeksdayshoursminutes 。 如果您想要一个浮点数,请将 true 作为第三个参数传递。

const duration = dateTwo.diff(dateOne, 'hours', true);

完整示例:

import moment from 'moment';

const dateOne = moment('2020-12-30 12:00:00');
const dateTwo = moment('2023-12-31 19:30:45');
const duration = dateTwo.diff(dateOne);

const formattedDuration = moment.utc(duration).format('HH:mm:ss');

console.log(formattedDuration);

输出:

07:30:45
免责声明:
1.本站所有内容由本站原创、网络转载、消息撰写、网友投稿等几部分组成。
2.本站原创文字内容若未经特别声明,则遵循协议CC3.0共享协议,转载请务必注明原文链接。
3.本站部分来源于网络转载的文章信息是出于传递更多信息之目的,不意味着赞同其观点。
4.本站所有源码与软件均为原作者提供,仅供学习和研究使用。
5.如您对本网站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。
火焰兔 » Moment.js:减去 2 个日期并格式化结果