Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE11 Date.prototype.toLocaleTimeString选项时区名称支持?_Javascript_Internet Explorer_Timezone - Fatal编程技术网

Javascript IE11 Date.prototype.toLocaleTimeString选项时区名称支持?

Javascript IE11 Date.prototype.toLocaleTimeString选项时区名称支持?,javascript,internet-explorer,timezone,Javascript,Internet Explorer,Timezone,希望使用Date.prototype.toLocaleTimeString格式化Date对象,如下所示: newdate().toLocaleTimeString('en',{hour:'2位',minute:'2位',second:'2位',timeZoneName:'short'}) 在Chrome和Firefox中,我得到如下结果: Chrome:“美国东部夏令时下午3:18:34” Firefox:“美国东部夏令时下午3:19:17” 然而,在IE中,我得到如下结果: IE11:“03:

希望使用
Date.prototype.toLocaleTimeString
格式化
Date
对象,如下所示:

newdate().toLocaleTimeString('en',{hour:'2位',minute:'2位',second:'2位',timeZoneName:'short'})

在Chrome和Firefox中,我得到如下结果:

Chrome:
“美国东部夏令时下午3:18:34”

Firefox:
“美国东部夏令时下午3:19:17”

然而,在IE中,我得到如下结果:

IE11:
“03:19:54 PM”
注意缺少“EDT”


我看到IE11应该完全支持这个函数的
选项
参数。我是否遗漏了什么,或者是否真的没有办法让区域设置格式的字符串包含时区名称。

完整的兼容性矩阵是,目前看起来如下所示:

两个红色框表示IE11没有这种支持


就我个人而言,我认为这不太可能。如果你需要支持IE11,你必须通过一个库携带你自己的数据。有一个这样的库,这里有一个关于如何使用它的例子。

如果您仍然想在IE 11中使用它,那么您可以尝试参考下面的解决方法

它不是简短的格式


单击按钮以字符串形式显示时间

试试看

函数myFunction(){ var d=新日期(); var rightNow=新日期(); var TZ=String(String(rightNow).split(“”[1]).split(“”[0]); var n=d.toLocaleTimeString('en',{小时:'2位',分钟:'2位',秒:'2位'}); n+='''''+TZ; document.getElementById(“demo”).innerHTML=n; }
谢谢你的建议。不幸的是,我需要以短格式显示时区,所以这不能很好地完成工作。谢谢你的回答,马特。我本应该像你们一样寻找支持的更详细的分类。我倾向于同意,我怀疑IE11在这一点上是否会得到本机支持。感谢您对矩时区的推荐,我来看看。使用矩时区显示日期和时区的时间的区域设置支持如何?不确定您的确切要求,但矩本身具有广泛的区域设置支持。时区缩写源于IANA tzdb,通过矩时区引入。我主要是问当使用矩时区(包括通过“z”的时区)格式化日期时,矩提供的区域设置支持是否包括时区本身的正确翻译?i、 e.英语的EDT到其他语言的EDT?我甚至不确定这些信息是否被翻译了。这种数据没有可靠的来源。时区缩写是一种痛苦——它们大多存在于英语中。存在一些随机的法语缩写,但很少使用。但是,很多时区都没有缩写的概念,所以你只能得到一个数字偏移量。而且,即使它们确实存在,也没有人能够就它们达成一致。示例-夏威夷HST还是HAST?这取决于你问谁。