这个日期格式有什么问题

时间:2013-06-11 18:18:22

标签: javascript google-chrome firefox datetime cross-browser

这适用于Chrome,但不适用于Firefox。

new Date("2013-06-03 17:09:06-0400")
  • 在Chrome中正常工作
  • 在Firefox中提供“NaN”。

我将不胜感激。

2 个答案:

答案 0 :(得分:2)

查看Mozilla Developer Network的DateDate.parse文档。

具体来说,它声明:

  

或者,日期/时间字符串可以是ISO 8601格式。从JavaScript 1.8.5(Firefox 4)开始,支持ISO 8601的子集。例如,可以传递和解析“2011-10-10”(仅限日期)或“2011-10-10T14:48:00”(日期和时间)。

如果你在日期和时间之间抛出'T':

new Date("2013-06-03T17:09:06-0400")
=> Mon Jun 03 2013 14:09:06 GMT-0700 (PDT)

在Chrome和Mozilla中,尽管您必须考虑用户系统的当前时区(即PDT)。

答案 1 :(得分:0)

根据我的经验,从JavaScript中的字符串构造日期对象的唯一可靠方法是自己解析字符串,然后使用带有单独数字参数的构造函数的版本每个领域。

基于字符串的构造函数很容易出现与语言环境相关的解析错误。