Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.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 js日期对地校准_Javascript_Date - Fatal编程技术网

Javascript js日期对地校准

Javascript js日期对地校准,javascript,date,Javascript,Date,我使用3个浏览器来输出这个结果 铬: new Date().toLocaleString() > "Sun Sep 04 2011 21:40:04 GMT+0800 (HKT)" 狩猎: new Date().toLocaleString() > "2011年9月4日 下午09时54分51秒格林尼治标准时间+0800" FF: 为什么输出结果不一样?时间缩放 这取决于计算机的配置、用户首选的日期格式、用户的区域设置以及浏览器如何确定 您应该更喜欢使用适当的日期库,例如用于格式化

我使用3个浏览器来输出这个结果

铬:

new Date().toLocaleString()
> "Sun Sep 04 2011 21:40:04 GMT+0800 (HKT)"
狩猎:

new Date().toLocaleString()
> "2011年9月4日 下午09时54分51秒格林尼治标准时间+0800"
FF:


为什么输出结果不一样?时间缩放

这取决于计算机的配置、用户首选的日期格式、用户的区域设置以及浏览器如何确定

您应该更喜欢使用适当的日期库,例如用于格式化


查看他们的和。

实际上,这是webkit中的一个bug;尤其是Chrome,但Safari确实也受到了影响:

toLocaleString()不会转换为区域设置

最糟糕的是,它关闭为WontFix。这怎么可能?我们应该试着重新打开它。关于这个bug的结论是,当一个新的(解释得很好的)错误出现时。对我来说,这听起来不是一个解决办法

在任何情况下,如果可能,请按照@arnaud576875的建议使用旧的但仍然很好的产品。

检查此项

这个例子:

var事件=新日期(Date.UTC(2012,11,20,3,0,0));
//英式英语使用日-月-年顺序和24小时时间,不使用上午/下午
log(event.tolocalString('en-GB',{timeZone:'UTC'}));
//预计产量:2012年12月20日03:00:00
//韩国人使用年-月-日订单和12小时的上午/下午时间
log(event.tolocalString('ko-KR',{timeZone:'UTC'}));

//预期产出:2012年。1220오전 3:00:00
每个浏览器的输出是什么?chrome:new Date().toLocaleString()“Sun Sep 04 2011 21:40:04 GMT+0800(HKT)”safari:>>>new Date().toLocaleString()“2011年9月4.日 下午09时54分51秒格林尼治标准时间+0800“FF:>>>>新日期().toLocaleString()“Sun Sep 4 21:46:03 2011”我不太愿意称这是一个重复的问题,但这是真正的问题,另一个问题只是一个幸运的好问题!尝试使用本地化参数。示例:
newdate()。toLocaleString(“en-us”)
看起来可能不仅仅是用户设置,请检查一下那个讨厌的chrome bug!只是想扔掉这是一个非常好的库-Datejs看起来没有维护。Chrome bug 3607现在被标记为已修复,但它没有修复。我在那里加了28条评论。基本上,它在我的系统上提供了一个美国格式的时间,我在这里设置了斯洛文尼亚语言环境。其他浏览器提供正确的本地化字符串。
new Date().toLocaleString()
> "Sun Sep 4 21:46:03 2011"