有没有办法在浏览器端的JS中设置全局/默认时区?
例如,如果我有一些+1300
日期并且用户-0800
它会转换时间。但我总是想把时代展示为+1300
.
我的应用程序已经非常大了,所以我希望我可以把它设置在一个地方,否则它将涉及数百行代码来调整任何使用日期的地方。
No.只有一个全局时区:UTC - 不幸的是,它不是 JS 中的默认值,您必须显式使用 …UTC…
方法来摆脱用户的本地时区。
您不能在 JavaScript 中设置时区。从 UTC 开始,如果要显示自定义时区,请添加/减去小时数,如本例所示。
它将涉及通过数百行代码来调整使用日期的任何地方。
不。您只需调整读取或写入日期时间的行。如果用户根据他的本地时区输入日期,您甚至不需要修复它 - 只需在您想要输出的位置。
JavaScript 有一个内置的方法来检索当前机器的时区偏移量:
var d = new Data();
var offset = d.getTimezoneOffset();
在上面的示例中,偏移量是从 UTC 到本地时间的分钟偏移量。如果您知道自己的偏移量,则可以编写一个全局方法来获取其偏移量并运行转换。