-1

您好,我有一个 XML 文件和一个“创建于”标签,用于存储日期和时间,如下所示 2012-09-15 02:08:46 我正在尝试创建一个新的 Date 对象,以便我可以轻松打印出日期和月份年。但它不喜欢这种格式。

像这样的东西

var theDate = new Date(Date.parse(storyDate));

console.log(theDate.getMonth());
theDate = theDate.getDate() + ", " + theDate.getMonth();

谢谢

更新:我可以让它在 Chrome 但不是 Firefox 中工作。更新:找到答案,谢谢大家。为什么投反对票?事实证明这是一个合理的问题。我错过了一个T。

4

2 回答 2

2
var theDate = new Date(Date.parse(storyDate.replace(' ', 'T')));

日期和时间之间需要“T”。(至少在 FireFox 中)

有效的日期时间格式

于 2012-09-17T08:48:03.817 回答
1

我会使用正则表达式手动解析日期。

var dateStr = "2012-09-15 02:08:46"
var dateRegex = /^(\d{4})-(\d{2})-(\d{2})\s(\d{2}):(\d{2}):(\d{2})$/
var dateParts = dateRegex.exec(dateStr)
var year = dateParts[1], 
    month = parseInt(dateParts[2], 10) - 1,
    day = dateParts[3],
    hour = dateParts[4],
    minutes = dateParts[5],
    seconds = dateParts[6];
var date = new Date(year, month, day, hour, minutes, seconds);
//
console.log(date.getMonth())
console.log(date.getDate() + ", " + date.getMonth());
于 2012-09-17T08:46:11.010 回答