Internet Explorer中的Javascript无效日期错误

dou*_*lin 39 javascript internet-explorer date

相对简单的javascript在这里,不确定为什么IE讨厌我(对待别人你想如何对待我想).

var newDate = new Date("2012, 11, 2 19:30:00:000");
alert(newDate);
Run Code Online (Sandbox Code Playgroud)

这适用于Chrome和FF,但IE输出"无效日期"

把我搞砸了:http://jsfiddle.net/k6yD6/

Ric*_*lly 54

给日期构造函数的字符串应该是RFC2822或ISO 8601格式的日期.在你的例子中它不是.请尝试以下方法:

new Date("2012-11-02T19:30:00.000Z");
Run Code Online (Sandbox Code Playgroud)

或使用替代构造函数:

new Date(2012, 11, 2, 19, 30, 0)
Run Code Online (Sandbox Code Playgroud)


Gui*_*nto 9

IE似乎不支持数字字符串中的毫秒和月.试试这个:

new Date("November 2, 2012 19:30:00");
Run Code Online (Sandbox Code Playgroud)

要么

new Date(year, month, day, hours, minutes, seconds, milliseconds)
Run Code Online (Sandbox Code Playgroud)