时区 America/Montevideo

Timezone America/Montevideo

如果我使用以下代码计算蒙得维的亚的当前当地时间:

var dt = new Date().toLocaleString("en-US", {timeZone: "America/Montevideo"})
console.log(dt);

我得到:

11/29/2015, 9:46:10 AM

如果我这次在网上查看,例如: http://www.zeitverschiebung.net/en/timezone/america--montevideo 我得到:

11/29/2015, 8:46:10 AM

为什么相差 1 小时?

乌拉圭的时区规则在 IANA time zone data 的 2015f 版中发生了变化,这可能是该网站正在使用的 - 但我怀疑您的浏览器仍在使用相对较旧的时区数据。

2015e相关规定:

Rule    Uruguay 2006    max -   Oct Sun>=1   2:00   1:00    S
Rule    Uruguay 2007    max -   Mar Sun>=8   2:00   0   -

相当于 2015f:

Rule    Uruguay 2006    2014    -   Oct Sun>=1   2:00   1:00    S
Rule    Uruguay 2007    2015    -   Mar Sun>=8   2:00   0   -

基本上,这意味着从 2015 年开始,乌拉圭将不再实行夏令时。

注释如下:

# From Steffen Thorsen (2015-06-30):
# ... it looks like they will not be using DST the coming summer:
# http://www.elobservador.com.uy/gobierno-resolvio-que-no-habra-cambio-horario-verano-n656787
# http://www.republica.com.uy/este-ano-no-se-modificara-el-huso-horario-en-uruguay/523760/
# From Paul Eggert (2015-06-30):
# Apparently restaurateurs complained that DST caused people to go to the beach
# instead of out to dinner.
# From Pablo Camargo (2015-07-13):
# http://archivo.presidencia.gub.uy/sci/decretos/2015/06/cons_min_201.pdf
# [dated 2015-06-29; repeals Decree 311/006 dated 2006-09-04]

这实际上是一个非常有趣的情况! 这显然是一个夏令时问题。发生的事情是,乌拉圭政府决定今年废除夏令时,这导致许多网站变得过时,因为在此之前的每一年,夏令时都从 10 月开始。

几年前以色列发生了一个非常相似的问题,当时政府决定更改宣布的 DST 日期,这导致自动化系统出现数周的 DST 问题数周。

乌拉圭夏令时公告如下:http://www.elobservador.com.uy/gobierno-resolvio-que-no-habra-cambio-horario-verano-n656787