猿问

我如何计算节点js中的本地时间

我想从后端发送一封自动电子邮件,其中包含存储在我的数据库中的日期。

但数据库由 UTC 日期组成。

我想将其转换为发送电子邮件的用户的当地时间。

我的想法是,我可以在进行 API 调用时发送偏移量。即我new Date().getTimezoneOffset()将其添加或减去数据库中存储的 UTC 日期。

我不确定如何进行此计算,而且我也不确定这种方法是否有效。


跃然一笑
浏览 86回答 1
1回答

浮云间

你的做法其实很好。您可以在前端获取时区差异,并通过 传递给后端request.body。var offset = new Date().getTimezoneOffset();console.log(offset);时区偏移是 UTC 与本地时间之间的差异(以分钟为单位)。请注意,这意味着如果本地时区晚于 UTC,则偏移量为正;如果本地时区早于 UTC,则偏移量为负。例如,如果您的时区是 UTC+10(澳大利亚东部标准时间),则将返回 -600。即使对于给定的区域设置,夏令时也会阻止该值成为常量。您可以通过这种方式在后端获取当地时间。const offset = 540;var date = new Date();date.setMinutes(date.getMinutes() - offset);console.log(date);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答