如何在瞬间比较两个日期.js

How to compare two dates in moment.js

本文关键字:两个 日期 js 瞬间 比较      更新时间:2023-09-26

我正在使用 moment.js 在我的应用程序中,我以特定格式将我的日期传递给 moment.js它将其与系统时间进行比较并给我漂亮的时间格式,如下所示:

moment(time, "YYYY-MM-DD HH:mm:ss.SSSSSS").fromNow();

在这里,时间由我以指定格式作为时间戳给出。

我的问题是fromNow()函数采用系统日期而不是服务器日期。因此,如果用户在他的系统中使用他的手机延迟 5 分钟,他将获得 4 分钟前作为最新更新的卡。

我想将我经过的"时间"与服务器时间进行比较,服务器时间也将由我传递。

您可以从服务器传入 2 个日期:现有时间戳和服务器的"现在"时间戳。

然后(假设您的服务器以相同的格式传递其时间戳),您可以使用.from()而不是.fromNow()执行以下操作:

moment(time, "YYYY-MM-DD HH:mm:ss.SSSSSS").from(serverTime, "YYYY-MM-DD HH:mm:ss.SSSSSS");

如果这是您唯一使用时间戳的事情,您可以让服务器直接计算并返回增量(我们称之为serverDeltaMs)并使用moment.duration(serverDeltaMs).humanize()格式化。