我正在尝试将时间戳转换为各个时区的本地时间,发现某些TimeZone在Chrome(v76.0.38)中不支持,但在Mozilla(v68.0.2)中工作正常。
let d = new Date(1567083463);
let n = d.toLocaleString('en-GB', { timeZone: "US/Arizona" });
其他几个时区也引发相同的错误
US/Alaska
US/Mountain
US/Central
US/East-Indiana
这些时区得到官方支持,如其网站中所述Chrome Supported Time Zone Values
最佳答案
该页面描述了另一个Google产品而不是Chrome 支持的时区。
引用MDN's documentation on toLocaleString
:
可以在该IANA链接上找到有效的时区,也可以使用Wikipedia: List of tz database time zones。您会注意到所有“US / *”时区均已弃用。仅使用Wikipedia页面上的Canonical条目,例如:
等等