0

目前我有这个代码:

var databaseTimeZoneMS = -240 * 60000;

var time = ('' + date_str).replace(/-/g,"/").replace(/[TZ]/g," "),
    dt = new Date,
    seconds = ((dt - new Date(time) + ((dt.getTimezoneOffset() * 60000) + databaseTimeZoneMS)) / 1000),

但是,如果夏令时无效,则 databaseTimeZoneMS 应为 -300 * 60000。如何检查是否为夏令时?这甚至是解决这个问题的正确方法吗?它看起来相当凌乱和不雅。

4

1 回答 1

2

您可能应该(当然,肯定)确保您的服务器端代码以某种方式将其实际的当前时区偏移量存储到每个页面上。有了这个,您将能够弄清楚客户端和数据库服务器之间的区别。

然而,这类事情总是很脆弱,所以如果您确保所有时间通信都以 UTC 术语进行,事情可能会更好。

于 2011-03-18T22:19:29.277 回答