1

我在 jquery 中有:

var start = '2012-11-10 13:10:13';

为什么这不起作用:

var date = new Date(start);

? 没有外部插件我怎么能做到?

4

3 回答 3

3

这更正确一点:

var correctStart = '2012-11-10T13:10:13';
var date = new Date(correctStart);

引用Date.parseMDN)文档:

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

尽管如此,IE8 仍然不支持这种格式(如此所述)。因此,我建议至少考虑使用外部库处理日期的可能性 - 特别是Moment.js

于 2012-11-06T11:37:46.587 回答
0

或者你可以试试如下图

var start = '10/11/2012 13:10:13';    
var date = new Date(start);

这是有效的

于 2012-11-06T11:54:42.153 回答
0

参考这个JSFIDDLE DEMO

您必须将日期字符串从转换为Y-m-d H:i:sY/m/d H:i:s因为 javascript 无法识别该格式的日期字符串。

做这个:

var my_date = "2012-11-10 13:10:13";
my_date = my_date.replace(/-/g, "/"); //this will replace "-" with "/"
//alert(my_date);
var  javascript_date = new Date(my_date);
于 2014-07-08T07:01:54.820 回答