【发布时间】:2019-09-14 03:56:39
【问题描述】:
我想根据他们的时区转换一个日期。
例如,我想设置为 EST 时间 (America/New_York)
2019-04-24 12:00:00
如果用户从 America/Los_Angeles 访问该站点,它将显示:
2019-04-24 09:00:00
我需要能够返回小时,因此在该示例中:9。
我尝试使用https://github.com/iansinnott/jstz 来确定他们的时区,并尝试使用https://moment.github.io/luxon 来处理转换而没有任何运气。
我正在通过更改计算机上的时区进行测试,但运气不佳。
【问题讨论】:
-
JavaScript Date 对象不会根据客户端的时区进行时区转换吗..?
-
new Date().getHours()已经这样做了。 -
您问题的第一部分是询问如何从代表特定时区(即“America/New_York”)的日期时间字符串创建
Date实例吗?关于您问题的第二部分,许多 JavaScriptDate方法(如getHours())会在本地时间自动返回值,您是否在寻找其他行为? -
你为什么不使用 NTP api。网络时间协议,这将始终返回来自用户在其设备中使用的网络的时间,例如来自互联网服务提供商或设备中的 SIM 卡!!!!看一看; ntpjs.org
-
使用 NTP 的原因如下:用户可能会通过更改设备日期和时间来欺骗应用程序,但 NTP 会为用户的特定位置从服务器提供 TIME 日期:) 干杯
标签: javascript timezone