我是一个时区。说GMT + 6.30。现在我想加/减几个小时呢?怎么做!我尝试过在网上找到的各种方式。我从地球工具那里获得了时区。
这是我尝试过的。
我尝试使用date
对象设置时间并使用.getTimezoneOffset();
,但它并没有根据我设置的时间返回。而是显示当地时区。
假设我在日期对象中设置了伦敦日期时间,并使用了date.getTimezoneOffset();
和我在时区+5
,然后它显示+5
不是00
我还想过手动添加,这是一项很大的工作。所以我需要的是知道是否有任何功能可以添加/减去几分钟和几小时的时区?我也可以获得+0630
格式的时区,它有助于轻松添加几个小时吗?
或者,您能否建议我从日期时间获取时区的简单方法?
答案 0 :(得分:0)
你说:
我尝试使用日期对象设置时间并使用
.getTimezoneOffset();
但是它没有根据我设置的时间返回。而是显示当地时区。假设我在日期对象中设置了伦敦日期时间并使用了
date.getTimezoneOffset();
而我正在使用时区+5
,那么它显示的是+5
而不是00
这是getTimezoneOffset
功能的唯一目的。它返回运行代码的计算机的本地时区偏移量,作为GMT以西的特定日期和时间的分钟数。没有办法改变这种行为。
您已经询问过如何在此值中添加或减去该值。你当然可以这样做,因为它只是一个数字。但它不会取得多大成就。日期对象仍将在内部使用Unix纪元的毫秒来表示其日期和时间,并且仍将使用运行它的计算机的本地时区来显示自己。
有一些解决方案可以在JavaScript中使用非本地时区,但大多数都需要使用库和外部时区数据。 I list several of these libraries here