在nodejs应用程序

时间:2017-05-17 02:55:18

标签: node.js mongodb angular date typescript

好的,所以这个问题已经被问到here但是,给出的解决方案似乎无法解决我的问题。

我有以下内容:enter image description here

当我点击保存时,我会参考这些字段并创建一个日期,如下所示:

this.profile.date_of_birth = new Date(this.editProfileForm.value['year'], this.editProfileForm.value['month'], this.editProfileForm.value['day']);

登录控制台时会显示:

  

1988年12月23日星期五00:00:00 GMT + 1100(AEDT)

然后我调用运行在nodejs的{​​{1}}应用程序,该应用程序获取数据并将其保存到http://localhost:3005,然后保存,我记录date_of_birth的值如下所示:

mongodb

然而这记录:

  

1988-12-22T13:00:00.000Z

这是休息日....

我在用户按下保存时创建新日期之前没有进行任何格式化,因此我不确定为什么当它离开前端应用程序时,并且到达后端应用程序时显示日期不正确......

api.put('/update', authenticate, (req, res) => { console.log(req.body.date_of_birth); // Save properties }); 应用程序的实际调用位于:

nodejs

有人可以推荐可能出错的地方吗?

1 个答案:

答案 0 :(得分:0)

Fri Dec 23 1988 00:00:00 GMT+1100 (AEDT)是当前时区的日期。根据{{​​1}},您的服务器似乎正在使用UTC

您可以使用 Date.UTC 创建一个1988-12-22T13:00:00.000Z的日期对象,该日期对象与您的服务器保持一致。

standart timezone of UTC