当前位置: 首页 > 面试题库 >

Javascript Date()给出错误的日期一小时

曹臻
2023-03-14
问题内容

我从控制器中的java(Spring-MVC)发送此日期,输入的类型mysqldatetime

@Temporal(TemporalType.TIMESTAMP) 
@Column(name = "..") public Date getYy() { 
    return this.yy; 
}

如下: [2015-09-30 00:00:00.0]

当我得到这个日期与ajax为1443567600000

new Date(1443567600000) 转换成 Tue Sep 29 2015 23:00:00 GMT+0000 (Maroc)

那么,为什么我得到错误的一小时约会呢?

我们通过以下方式解决它

d = new Date(value) ;
d.setTime( d.getTime() - new Date().getTimezoneOffset()*60*1000 );

因为这是夏令时(DST)或夏令时的问题。好文章


问题答案:

我认为这可能是 夏令时的 问题。您可以检查客户端的时区和服务器的时区。(Web服务器或SQL Server)



 类似资料:
  • 问题内容: 我创建了一些小的方法作为Util类,例如以下代码: 并且,进行了非常简单的运行,如下所示: 结果是一个很奇怪的日期-> 2017/07/187 搜索了类似的问题,并尝试了TimeZone,Locale,但没有帮助。有什么建议 ? 顺便说一句,这是我的环境: Windows7 x86 JDK 1.8.0.131 x86 Oxygen corrosion of x86 问题答案: 您格式化

  • 问题内容: 我有一个简单的方法,应该获取当前日期,将其放入某种格式,然后将其作为String返回。到目前为止,一切都很好(上次尝试于1月31日进行),但由于某种原因,当我今天尝试使用它时,它返回字符串“2013-02-43”。 显然,二月份没有43天,而且我不知道为什么要返回此日期。我到处都在寻找解决方案,但似乎没有一个适合我遇到的特定问题。这是代码: 仅出于记录目的,我尝试使用Calendar.

  • 问题内容: 我有一个具有日期字段的类,该日期字段表示一条数据的“有效起始日期”。定义如下: 从我从数据库中提取日期并显示它的那一点似乎一切正常。如果我在前端选择日期2003年9月18日,那么当我检查数据库时要保存足够的日期,即保存日期(数据库为MySQL 5.5.9列类型为DATE)。但是,当我调出列表记录时,显示的日期是2003年9月17日-提前一天。 如果我选择年初或晚于2003年3月26日或

  • 我有一个简单的方法,可以获取当前日期,将其转换为特定格式,然后作为字符串返回。到目前为止,它还不错(上次尝试是在1月31日左右),但由于某种原因,当我今天尝试它时,它返回字符串“2013-02-43”。 现在很明显,2月份没有43天,我不知道为什么它会返回这个。我到处寻找解决方案,但似乎没有一个适合我的具体问题。以下是代码: 为了记录在案,我尝试过使用Calendar.get实例()等。结果相同。

  • 我使用下面的代码来格式化日期。但是当我以不正确的格式给出数据时,它会给出意想不到的结果。 在上述情况下,输出为-formattedVal:0009-02-05。 它不是抛出解析异常,而是解析值并给我一个不正确的输出。有人能帮我理解这种反常的行为吗。

  • 我正在构建一个应用程序,我正在使用react-datepicker,但是我的组件有一个奇怪的行为。所选日期显示错误的格式。这是我正在使用的: 和 问题是组件显示以下值:。 似乎该组件正在计算到一年中的当前日期已经过去了多少天。我也尝试过,但没有成功。任何帮助都将不胜感激。谢谢。