javascript - 在 Node.js 中获取错误的日期

标签 javascript node.js json typescript date

我尝试了在这里找到的所有解决方案,但没有任何效果。 我只是在尝试:

var a = new Date();
console.log(a);
//2020-01-12T05:05:17.320Z

//Time in my timezone: 2020-01-12T02:05:17.320Z

我来自巴西,时区是 -3:00

我已经安装了 moment.js 并尝试过:

var moment = require('moment-timezone');
moment().tz("America/Sao_Paulo").format();

var a = new Date();
console.log(a);

但我一直在没有我的时区的情况下。我还尝试在没有 moment.js 的情况下设置 TZ,但没有成功。

我无法使用某些解决方案来更改调用“new Date()”的方式,因为我必须将字符串解析为包含日期的对象,并且我使用提示模块,该模块从控制台获取已经返回的日期一个约会。我不知道还能做什么。

感谢您的帮助。

*我在 Windows 上运行,时间正确,配置指向正确的时区

编辑1:更多信息

最佳答案

我发现最好的方法是使用 moment.js 添加“getTimezoneOffset”(分钟)

//Will returns the current "wrong" time in formart '2020-09-29T19:47:46.411Z'
//Expect: 2020-09-29T16:47:46.411Z
console.log(new Date())

因此,如果您想查看任何对象的完整日期('DD-MM-YYYY HH:mm')格式

var moment = require('moment')
// specificDay is a Date (type: Object) like '2020-09-22T00:00:00.000Z' 
// previously retrieved from the database without information about the time('HH:mm')
// Only with 'YYYY-MM-DD'
moment(specificDay, "YYYY-MM-DD").add(new Date().getTimezoneOffset(),'minute').format('DD-MM-YYYY HH:mm')

关于javascript - 在 Node.js 中获取错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59701260/

相关文章:

javascript - Js购物车; localStorage 将我的购物车设置为空

javascript - change 事件不会在 ajax 加载的表单上触发

javascript - 如何在不同的 NodeJS 文件中正确返回 bool 值?

json - 在redis中存储对象属性

javascript - 使用 HTML5 Canvas 从本地 csv 到 "plot"二维数组

javascript - 当我不更改范围内的任何内容时,AngularJS 会重新评估绑定(bind)

node.js - 从控制台调试 Protractor 测试

node.js - 将二进制音频文本转换为音频文件

javascript - 解析 JSON 文件 - 子数组或方括号内的 node.js

ASP.NET MVC 将 JSON 从 Controller 传递给 View