1

我有一个从外部来源提取的日期字符串,如下所示:

9/25/2011 4:38:40 PM

时区中的那个来源PDT

我想使用date.js从该信息中创建一个 UTC 日期。我目前正在使用这段代码来解析它:

var dateString = '9/25/2011 4:38:40 PM';
var d = Date.parseExact('9/25/2011 4:38:40 PM', 'M/d/yyyy H:m:s tt');

虽然这确实加载了日期,但它就像在我的时区一样。我如何告诉 date.js 我告诉它的日期来自不同的时区?

4

3 回答 3

1

将 e 放入日期格式将表示时区。我没有对此进行测试,但是:

Date.parseExact(dateString + " PDT", "M/d/yyyy H:m:s tt e")

不考虑夏令时转换(PST 而不是 PDT),但你明白了要点。

于 2011-09-27T20:54:45.427 回答
1

使用时区格式说明符...

var dateString = '9/25/2011 4:38:40 PM EST';
var d = Date.parseExact(dateString, 'M/d/yyyy H:m:s tt Z');
于 2011-09-27T20:56:19.883 回答
0

你有没有尝试过这样的事情?:

var dateString = '9/25/2011 4:38:40 PM';

var date = Date.parseExact(dateString, format);
var utc_date = new Date(date.getTime() - (date.getTimezoneOffset() * 60000)) 
于 2011-09-27T20:52:13.110 回答