1

我在标题的措辞上苦苦挣扎,但基本上我想要一个可以提供两个日期的函数,它会输出如下内容:如果结果是 15 天,则输出“2w”,如果结果为 13 个月,则输出“1y”,如果结果为“1m”,则输出如下是 4 或 5 周。最好减少到一小时……但最少 1 天。

我发现了一个类似的 SO 问题,但它是针对 PHP 的,无论如何都不完整:如何计算两天之间的差异作为格式化字符串?

4

1 回答 1

1

有许多 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上使用

于 2013-04-19T16:58:40.647 回答