JavaScript的toLocaleTimeString()方法无法工作

18

你好,我有一段代码

var date = new Date("11/12/2014 02:58:11 UTC");

console.info(date.toString());

console.info(date.toLocaleTimeString());

console.info(date.toLocaleDateString());

并且展示:

Tue Nov 11 2014 16:58:11 GMT-1000 (Hawaiian Standard Time)

9:58:11 AM

11/12/2014

我的时区是(UTC-10:00)夏威夷

date.toString(); 显示正确,但 toLocaleTimeString()toLocaleDateString() 显示不正确的输出。

我该如何解决这个问题?


我刚刚在本地测试了你的代码并运行了。对我来说,它给出了正确的输出。我不确定你内部使用了哪个库。你能提供更多细节吗? - Sohan
2个回答

7
您可以在 options 参数中提供时区给 toLocaleTimeString() 方法使用:
date.toLocaleTimeString('en-US',{timeZone:'America/Adak'})

必须从IANA时区数据库中指定时区,这有点奇怪...但它有效。


0


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接