以下代码似乎适用于Firefox但不适用于Chrome:
var d = Date.parse("Sep 23, 2012 24:0:0");
alert (d);
它警告Firefox中的毫秒,但我在Chrome中获得了NaN。
当然,最后3个数字(24:0:0)可能不算作'日期',但我希望有一个简单的解决方案来使代码跨浏览器工作。
答案 0 :(得分:2)
这适用于您列出的格式:
var parts = "Sep 23, 2012 21:1:2".match(/(.*) (\d+):(\d+):(\d+)/)
var d = new Date(parts[1])
d.setHours(parts[2])
d.setMinutes(parts[3])
var tstamp = d.setSeconds(parts[4])
不确定您最终是否需要Date对象或整数时间戳,但这应该可以兼顾两者。
答案 1 :(得分:1)
Chrome似乎不支持时间...
尝试Date.parse("Sep 23, 2012");
它应该工作
Date.parse不应该根据规范解析时间。 你需要第三方代码。 见: What is the best way to parse a time into a Date object from user input in Javascript?