如何在javascript中将datetime微格式转换为本地时间?
我有一个页面,当前正在使用datetime微格式来显示时间戳,但我只显示了我自己时区的人类可读时间:
<abbr class="published" title="2009-01-09T09:16:00-05:00">
Friday, January 9, 2009 at 9:16 am (EST)</abbr>
我想要做的是将abbr标签的innerHTML重写为相同的格式,但是在用户的本地时区。因此,对于西雅图的读者,上述内容应转换为:
<abbr class="published" title="2009-01-09T09:16:00-05:00">
Friday, January 9, 2009 at 6:16 am (PST)</abbr>
我查看了Javascript Date对象,它允许我获取本地时区偏移量。但我有一些问题:
我没有看到从ISO-8601时间戳创建新Date对象的简单方法。 (我想如果没有更快的方法,我可以解析子串或正则表达式。)
我没有看到获得时区的命名缩写的方法。例如,对于西雅图的读者,我希望有时间将“(PST)”附加到最后,否则该用户不清楚时间戳已被转换(特别是如果他是常客和已经习惯了我的时代在EST)。
没有找到相关结果
已邀请:
2 个回复
旗低饶彤
不幸的是,它也没有处理时区缩写。你必须修改“tzre”表达式来接受字母,我知道在Javascript中处理时区缩写的唯一解决方案是有一个查找表,你可以在更改区域时手动保持最新状态夏令时。
眠皇
我不记得我是否在输入中添加了对非utc日期时间的支持,但不会太难以解释它们。