我有以下 ISO 日期:
(UTC) 2013-10-17T05:23:34.387
(PST) 2013-10-17T05:23:34.387-08:00
我想在 PST 中显示日期。(-08:00 是从 UTC 到 PST 的偏移量)
当我使用:
alert(new Date('2013-10-17T05:23:34.387'))
alert(new Date('2013-10-17T05:23:34.387-08:00'))
我得到:
Thu Oct 17 2013 06:23:34 GMT +0100 (GMT Summer Time)
Thu Oct 17 2013 14:23:34 GMT +0100 (GMT Summer Time)
没有偏移的 ISO 日期来自以下 C#(针对此问题进行了适当编辑):
item.CreatedDate = DateTime.Now.ToUniversalTime();
/////
var pst = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");
date = TimeZoneInfo.ConvertTimeFromUtc(item.CreatedDate, pst),
var json = JsonConvert.SerializeObject(date, Formatting.Indented);
带有偏移量的 ISO 日期来自以下 C#(针对此问题进行了适当编辑):
item.CreatedDate = DateTime.Now.ToUniversalTime();
/////
var pst = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");
var offset = pst.BaseUtcOffset;
date = new DateTimeOffset(TimeZoneInfo.ConvertTimeFromUtc(item.CreatedDate, pst), offset);
var json = JsonConvert.SerializeObject(date, Formatting.Indented);
我的问题是,如何在 JSON 中维护时区信息并在浏览器中将日期显示为 PST?