javascript函数计算两个日期的差异,返回短格式,四舍五入到单个单位

标签 javascript function math datetime datediff

我在标题措辞上遇到了困难,但基本上我想要一个可以提供两个日期的函数,它会输出如下内容:如果结果是 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/

相关文章:

javascript - 创建与 php 数组具有相同结构的 javascript 数组

javascript - 如何假设两个联合类型相同

sql - 当我有一个很大的结果时,Postgres 函数不工作

algorithm - RANSAC算法参数设置

c++ - 实现复杂的基于旋转的相机

javascript - 社交网络帖子未发送到数据库

javascript - jQuery - 从对象循环中排除元素

javascript - 在 Wordpress 中排队 jQuery

javascript - 如何使用来自 Angular 组件的发布请求打开新选项卡

java - 在哪里可以找到数学解析器/引擎的测试?