1

我有一个函数可以根据注册日期计算数据库的价格。当我在本地和 AWS 服务器中检查结果时,结果不同。我将本地服务器的日期日志与 AWS 服务器进行了比较,结果不同。

要在本地和 AWS 服务器中的查询中使用的日期结果:

本地:2018 年 2 月 1 日星期四 08:00:00 GMT+0800 (+08) ===== 2018 年 3 月 1 日星期四 08:00:00 GMT+0800 (+08)

服务器:2018 年 2 月 2 日星期五 00:00:00 GMT+0000 (UTC) ===== 2018 年 3 月 2 日星期五 00:00:00 GMT+0000 (UTC)

代码:

date = new Date(); // set current date
from = new Date(date.getFullYear(), date.getMonth(), 1);
to = new Date(date.getFullYear(), date.getMonth()+1, 1);
from.setDate(from.getDate() + 1); // set date + 1
from.setHours(from.getHours() - from.getUTCHours());
to.setDate(to.getDate() + 1); // set date + 1
to.setHours(to.getHours() - to.getUTCHours());

本地 from 和 to 的结果:

2018-01-01T00:00:00.000Z
2018-02-01T00:00:00.000Z

服务器中 from 和 to 的结果:

2018-01-02T00:00:00.000Z
2018-02-02T00:00:00.000Z
  • 这是导致不同结果的原因吗?
  • 如何解决这个问题?
4

1 回答 1

0

所以题体改了,不再有意义,但标题中的问题可以回答:

您可以使用Date.UTC构造函数

于 2021-10-17T11:12:16.013 回答