设置并向客户端显示不同时区的事件时间



我想知道处理时区的最佳方法是什么。

假设user1user2写了一条消息

现在user1处于UTC + 2user2处于UTC -2,假设服务器将时间设置为UTC +1

那么我将如何处理所有这些时区差异呢?

我正在编写jquery插件,它将更新时间多久以前发生的事情,我最好的猜测是将服务器设置为UTC 0然后根据客户端时区计算时差,但是有没有办法获取客户端时区,或者也许我以错误的方式这样做?

从上到下使用纪元时间 (UTC+00) 并忽略时区。假设浏览器/操作系统时区正确。这意味着发送和接收的每条消息都有一个时间戳,其形式是自纪元以来的毫秒数,使用new Date().getTime()生成。

我目前的时间是:

Thu Oct 18 2012 22:07:11 GMT+0200 (CEST)

或:

1350590831507

CEST 是 UTC+02。在目标计算机上解释的后一种形式(与 UTC-0200new Date(1350590831507))将是:

Thu Oct 18 2012 18:07:11 GMT-0200

但它仍然是相同的日期(时间点)!如果十秒后将此时间戳与new Date().getTime()进行比较,则无论时区如何,您都将始终获得 10000 毫秒。

相关内容

  • 没有找到相关文章

最新更新