首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >计算React Native中两个日期之间的差异

计算React Native中两个日期之间的差异
EN

Stack Overflow用户
提问于 2019-04-17 07:16:19
回答 4查看 19.2K关注 0票数 8

我需要计算两个日期之间的差值。

我带来今天的日期: new Date().toJSON().slice(0,10) = 2019-04-17,另一个日期格式相同

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-04-17 07:44:55

代码语言:javascript
复制
var msDiff = new Date("June 30, 2035").getTime() - new Date().getTime();    //Future date - current date
var daysTill30June2035 = Math.floor(msDiff / (1000 * 60 * 60 * 24));
console.log(daysTill30June2035);

票数 11
EN

Stack Overflow用户

发布于 2019-04-17 07:40:53

您可以自己实现它,但为什么要这样做呢?这个问题的解决方案已经存在,而且其他人已经注意到(并且仍然在注意)它的工作方式。

使用date-fns

代码语言:javascript
复制
import differenceInDays from 'date-fns/difference_in_days';

如果你真的想撞你的头,你可以得到毫秒的差值,然后除以一天中的毫秒数。听起来不错,但我不能百分之百确定它是否能正常工作。

代码语言:javascript
复制
const differenceInDays = (a, b) => Math.floor(
  (a.getTime() - b.getTime()) / (1000 * 60 * 60 * 24)
)
票数 4
EN

Stack Overflow用户

发布于 2019-04-17 08:34:15

如果您操作了许多日期,也许像moment.js这样的外部库可能会很有用。像date range one这样的附加组件还有很多。

安装后,您需要创建一个范围

代码语言:javascript
复制
const start = new Date(2011, 2, 5);
const end   = new Date(2011, 5, 5);
const range = moment.range(start, end);

然后可以通过执行以下操作来获得difference

代码语言:javascript
复制
range.diff('months'); // 3
range.diff('days');   // 92
range.diff();         // 7945200000

希望它能有所帮助:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55717793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档