Date.parse() 在 Mozilla Firefox JavaScript 中无法正常工作
Date.parse() not working properly in Mozilla Firefox JavaScript
我有字符串 dateTime 值"01-01-2013 12:00:00 AM">,并使用 Date.parse("01-01-2013 12:00:00 AM")
解析为 DateTime。这在谷歌浏览器和IE浏览器中工作正常。但不能在火狐中工作。任何人都可以帮助如何在Mozilla Firefox中将此特定字符串解析为dateTime值。
谢谢巴拉蒂。
TL;DR 您在此上下文中使用了无效的日期格式,Chrome 和 IE 恰好处理了该格式。
完整答案:
该规范仅要求 JavaScript 实现来识别 Date.parse
中的某些格式。具体说来
它接受 RFC2822/IETF 日期语法(RFC2822第 3.3 节(,例如 "
Mon, 25 Dec 1995 13:30:00 GMT
"。它了解美国大陆 时区缩写,但对于一般用途,请使用时区偏移量, 例如,"Mon, 25 Dec 1995 13:30:00 +0430
"(4小时30分钟 格林威治子午线以东(。如果未指定时区,并且 字符串采用 ES5 识别的 ISO 格式,假定为 UTC。格林威治标准时间 和 UTC 被视为等效。本地时区用于 以 RFC2822 第 3.3 节格式(或任何格式 在 ES8601 中被公认为 ISO 5(,不包含时区 信息。ECMAScript 5 ISO-8601 格式支持
日期时间字符串可能采用 ISO 8601 格式。例如 "
2011-10-10
"(只是日期(或"2011-10-10T14:48:00
"(日期和时间(可以 被传递和解析。
您的示例 01-01-2013 12:00:00 AM
不是这些格式之一。一些浏览器可能会解析它,这取决于他们使用的JavaScript引擎,但它是非标准的。Chrome 和 IE 碰巧识别出它,但 Firefox 返回 NaN
,这符合规范:
ECMAScript 规范指出:如果字符串不符合 函数可以回退到任何 特定于实现的启发式或特定于实现的分析 算法。无法识别的字符串或包含非法元素的日期 ISO 格式字符串中的值将导致
Date.parse()
返回NaN
.
有关更多详细信息,请参阅此文档。
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 正在尝试使用if和else添加类,但无法正常工作
- Jquery FadeIn FadeOut 只工作一次
- Foreach无法在Typescript中工作
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- JS可以在Chrome中工作,但不能在Firefox中工作
- ajaxToolkit PopupControlExtender不工作.过时的
- HTML标记在脚本标记中工作
- javascript扫雷器floodfill算法不能正常工作