有人可以解释毫秒的工作原理和一些文档。在给定两个日期的情况下,我正在尝试计算年,日以及months
两个日期之间的差是多少。理想情况下,我希望将数字四舍五入,以免出现小数。没有任何库,在JavaScript中有可能吗?
到目前为止,这是我的代码。我已经尝试过进行1000 * 60 / 365
一些组合,但是我不知道它们代表什么-我可能还会尝试几个小时。
var date1 = new Date(a); // 01/03/2008
var date2 = new Date(b); // 22/03/2016
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
var diffMonths = Math.ceil(timeDiff / (12));
var diffYears = Math.ceil(timeDiff / (365));
console.log(diffDays);
console.log(diffMonths);
console.log(diffYears);
我设法算出天差,但我仍然不完全了解。
对于纯JavaScript来说,仅由于语言处理日期时间的方式就很难做到这一点。最好的解决方案是使用MomentJS库。它确实很时尚,有据可查且易于使用。
我正在为将来来自Moment.JS的人们使用这样的解决方案
var bornDate = moment([1990, 2, 12]); // get YYYY MM DD from datepicker etc
var userChoiceDate = moment([2016, 3, 22]);
var diffYears = bornDate.diff(userChoiceDate, 'years');
var diffDays = bornDate.diff(userChoiceDate, 'days');
console.log(diffYears);
console.log(diffDays);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句