我在标题措辞上遇到了困难,但基本上我想要一个可以提供两个日期的函数,它会输出如下内容:如果结果是 15 天,则输出“2w”;如果结果是 13 个月,则输出“1y”;如果结果是 13 个月,则输出“1m” “如果是 4 或 5 周。最好精确到小时...但至少 1 天。
我发现了一个类似的问题,但它是针对 PHP 的,而且还不完整:How to calculate the difference between two days as a formatted string?
最佳答案
有许多 JavaScript 日期库可以满足您的所有需求,甚至更多。这是使用 XDate 的示例
<div id="result"><div/>
var now = new XDate();
var then = new XDate(2013, 04, 01, 0, 0, 0, 0);
document.getElementById("result").textContent = now.diffWeeks(then).toFixed(1) + " Weeks";
可用jsfiddle
这是 Moments.js
<div id="result"><div/>
var then = moment("Dec 25, 1995");
document.getElementById("result").textContent = moment(then, "YYYYMMDD").fromNow();
也可在 jsfiddle 上找到
关于javascript函数计算两个日期的差异,返回短格式,四舍五入到单个单位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16109647/