Javascript 用错误的时间续写返回日期

Javascript 用错误的时间续写返回日期,javascript,mysql,node.js,datetime,sequelize.js,Javascript,Mysql,Node.js,Datetime,Sequelize.js,数据库和节点设置为-02:00时区 当我使用sequelize保存寄存器时,它会在其日期字段中保存具有正确日期和时间的寄存器。例如,如果我保存一个字段时刻设置为“2017-01-15T23:59:59-0200”的寄存器,并通过MySQL Workbench查看数据库,我将在相应列中看到2017-01-16 00:00:00 我甚至可以正确地找到寄存器并按日期和时间进行过滤 但字段中的查找操作返回的值为“2017-01-16T01:59:59.000Z”,这意味着它被添加到了两个小时的答案中 如

数据库和节点设置为-02:00时区

当我使用sequelize保存寄存器时,它会在其日期字段中保存具有正确日期和时间的寄存器。例如,如果我保存一个字段时刻设置为“2017-01-15T23:59:59-0200”的寄存器,并通过MySQL Workbench查看数据库,我将在相应列中看到2017-01-16 00:00:00

我甚至可以正确地找到寄存器并按日期和时间进行过滤

但字段中的查找操作返回的值为“2017-01-16T01:59:59.000Z”,这意味着它被添加到了两个小时的答案中


如何使用Sequelize从MySQL检索正确的日期和时间?

通过过度隐藏String.toJSON解决:

Date.prototype.toJSON = function(){ return this.toLocaleString(); }

哦,天哪,我搜索了所有的东西,但从来没有找到像这样的东西。这有什么坏处吗?你把它放在哪里?