不同地区的Javascript日期时间不相同

Javascript date time not same with different locale

本文关键字:时间 日期 地区 Javascript      更新时间:2023-09-26

我们将时间作为长类型从服务器发送到javascript。Javascript日期函数根据用户区域设置将其转换为日期。我们不希望那样。我们希望它被设置为日期,因为它来自服务器。

例如

;我们从服务器端发送2013-06-05 17:00:00,在客户端显示为用户浏览器上的2013-06-05 15:00:00。我想展示来自server的东西。我怎样才能纠正这个问题?

你描述的行为在JavaScript中很常见。

有两种处理方法:

选项1

从服务器发送UTC时间。您可以将其作为整数发送,也可以作为带有Z偏移量的ISO8601字符串发送。在JavaScript中,总是以UTC时间显示该值。

选项2

从服务器发送ISO8601格式的日期/时间字符串。发送一个未指定的区域偏移量(不带 Z值或偏移量,如-04:00)。在客户机上解析该值,可以使用支持ISO8601格式的现代浏览器,也可以使用moment.js等库。

由于你的问题中没有提供任何代码示例,所以我不会在我的回答中提供任何代码,也不会进一步详细说明。如果您想更新您的问题,以显示您正在做什么,您尝试过什么,什么没有工作,那么我很乐意删除这一段,并向您展示可以实现这些选项中的任何一个的代码。如果你做一些研究并在代码中解释你的发现,你会发现你在StackOverflow上得到更好的结果。