浏览器Date#toString时区是否可靠

时间:2017-04-07 07:43:24

标签: browser timezone

大多数浏览器都可以显示某种时区信息:例如new Date().toString()会返回"Fri Apr 07 2017 02:20:12 GMT-0500 (CDT)"

但是我看到许多解决方案根本不使用它,而是尝试使用几种方法猜测时区。

如果new Date().toString()确实返回了某些时区信息,那么这是正确的吗?或者浏览器也会返回错误的信息吗?

1 个答案:

答案 0 :(得分:1)

括号中的值未在ECMAScript规范中定义。由每个实现来决定他们想要在那里展示什么。因此,该值仅与实现方式一样可靠。除了期望不一致的结果之外,人们不能说出任何一般的内容。

也就是说,许多现代实现从相同的源数据中获取它们的值,the Unicode CLDR project,通常是ICU。那些通常会提供完全本地化的文本值,例如英文"Eastern Daylight Time"。 (不只是"EDT"