如何将上午8点任何时区转换为UTC时间

时间:2019-03-29 09:39:47

标签: javascript time momentjs

如何将我的上午8点的任何时区转换为带有时间或javascript的UTC时间

moment("8:00:00","h:mm:ss").tz('time_zone).utc().toString()

我绑了这个,但现在可以了。有解决办法吗?

2 个答案:

答案 0 :(得分:2)

如果您的意思是用户的本地时区,则应使用此时间:

moment("8:00:00","H:mm:ss").utc().format()
  • H用于24小时制,h用于12小时制。虽然不一定要早上8点,但应该有一些 方式知道您不是晚上8点。 (假设晚上8点是20:00:00)。

  • 您不需要矩时区的tz函数。除非您的源数据位于某个任意时区,而不是用户的本地时区,否则您根本不需要时区。

  • 使用format代替toString。如果要以特殊格式输出,请参考the documentation以获取可以传递给该函数的参数。

如果您实际上是指一个带有IANA时区标识符的任意时区,例如America/New_York,那么应该是这样的:

moment.tz("8:00:00","H:mm:ss","America/New_York").utc().format()
  • 有了这个,您要做需要时区。

最后,如果这是一个针对现代环境的新项目,Moment团队建议您考虑使用Luxon。 Luxon从环境本身获取时区支持,因此其尺寸也要小得多。

luxon.DateTime.fromFormat('8:00:00', 'H:mm:ss', { zone: 'America/New_York'})
              .toUTC().toString()

答案 1 :(得分:0)

使用其他区域的当前日期值初始化变量(必须采用日期格式),然后使用RectShape方法。

从IST到UTC的示例代码如下:

LabelShape