如何获取浏览器的时区名称列表

How do I get a list of timezone names of a browser

我想获取系统可用时区的浏览器特定时区名称(不同的浏览器为每个系统设置显示不同的文本)。在编写 console.error(new Date()) 时,我需要“()”中的确切时区字符串,但不仅仅是我当前的设置,无需更改我的 OS 设置并重新启动浏览器每次。

AFAIK js 库使用它们自己的名称列表来解决此问题,但生成的名称与浏览器时区名称不同。我需要浏览器会写的名字。

谢谢。

ECMA-262, Edition 5.1脚本语言的当前版本俗称javascript,在我写这个答案的时候)没有API 获取时区列表。

我不知道任何浏览器在 javascript 中提供这样的 API。

我什至不确定任何浏览器内部都有时区列表。浏览器可能会从操作系统中获取当前时区的名称。

使用 Date.prototype.getTimezoneOffset,您可以获得用户当前区域设置的 UTC 时间偏移量(以分钟为单位)。一些浏览器 (Crome) 使用 Date.prototype.toString() 显示当前时区的名称,但有些浏览器 (Firefox) 不显示当前时区的名称。