[英]How to get difference between 2 Dates in Years, Months and days using moment.js
[英]Relative Date in Moment.js using .fromNow() - how to get together years, months and days ago?
2015-02-01
- (2015年2月1日) 2016-07-02
(2016年7月2日) 我们可以很容易地看到,旧的日期发生了约1年5个月和 1天前。
我希望使用Moment.js获得相对结果,所以我做了:
return moment('2015-02-01).fromNow();
遗憾的是 , 图书馆的结果a year ago
我得到a year ago
,明年几乎有一半被忽略(缺少5个月和1天)。
传递给.fromNow()
的唯一可用布尔参数是没有任何帮助的。 是否可以获得完整的相对日期,如果需要,我可以控制故障甚至是小时,分钟和秒?
根据您想要的方向,您可以选择几个选项。 可能最直接的是使用持续时间而不是.fromNow()
。
做就是了:
var diff = moment('2015-02-01').diff(moment(), 'milliseconds');
var duration = moment.duration(diff);
这将为您提供持续时间类型,您可以从中获取大量信息。 例如:
duration.years(); //-1
duration.months(); //-4
duration.days();// -30
duration.hours(); //-8
或者如果你想要聚合的单位:
duration.asYears(); //-1.416481451250425
duration.asMonths(); //-16.997784898617585
等等。 您可以根据需要格式化。
如果您想要更高级的持续时间格式,可以查看此插件 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.