Javascript Date()将错误的日期提前一小时 [英] Javascript Date() give wrong date off by one hour
问题描述
我从我的控制器发送此日期的java( Spring-MVC
) mysql
中的类型是 datetime
I send this date from my controller in java (Spring-MVC
) the type in mysql
is datetime
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "..") public Date getYy() {
return this.yy;
}
as: [2015-09-30 00: 00:00.0]
当我用ajax获取此日期 1443567600000
:
When i get this dates with ajax as 1443567600000
:
新日期(1443567600000)
转换为 Tue Sep 29 2015 23:00:00 GMT +0000(Maroc)
那么为什么我的错误日期减去一小时?
So why i get wrong date off by one hour?
解决方案
我们通过
d = new Date(value) ;
d.setTime( d.getTime() - new Date().getTimezoneOffset()*60*1000 );
因为它是夏令时(夏令时)或夏令时问题。好文章
because it was Daylight saving time (DST) or summer time problem. good article
推荐答案
我想这可能是一个夏令时问题。您可以检查客户的时区和服务器的时区。 (Web服务器或SQL Server)
I think maybe this is a Daylight Saving Time problem. You can check your client's timezone, and your server's timezone. (web server or SQL Server)
这篇关于Javascript Date()将错误的日期提前一小时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!