如何使用 moment.js 获取年、月和日中的 2 个日期之间的差异? 例如,4/5/2014 和 2/22/2013 之间的差异应计算为 1 年 1 月 14 天。
最佳答案
Moment.js 无法直接处理这种情况。它确实允许您计算两个时刻之间的差异,但结果是经过的持续时间(以毫秒为单位)。 Moment 确实有一个 Duration对象,但它将月定义为 30 天的固定单位 - 我们知道情况并非总是如此。
幸运的是,目前已经创建了一个名为 "Precise Range" 的插件。 ,这做对了。看着the source , 它的作用类似于 torazaburo's answer - 但它正确说明了要调整的月份中的天数。
在你的项目中包含 moment.js 和这个插件 (readable-range.js) 之后,你可以像这样简单地调用它:
var m1 = moment('2/22/2013','M/D/YYYY');
var m2 = moment('4/5/2014','M/D/YYYY');
var diff = moment.preciseDiff(m1, m2);
console.log(diff);
输出为“1年1个月14天”
关于javascript - 如何使用 moment.js 获取年、月和日中的 2 个日期之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26063882/