尝试将字符串转换为Javascript日期。 我的字符串:
var fullDate = this.date + " " + this.time + ":00";
提供输出: 24/12/2016 02:00:00
但尝试将其转换为js Date对象,如:
var k = new Date(fullDate);
给出输出:无效日期
甚至:var k = Date.parse(fullDate);
给出输出: NaN
欢迎任何帮助。
到目前为止,我按照http://www.datejs.com/的说明进行了
答案 0 :(得分:4)
您的格式无效。有效格式为month/day/year
,请尝试:
var fullDate = "12/24/2016 02:00:00";
var k = new Date(fullDate);
希望我能帮忙!
答案 1 :(得分:3)
我刚刚发布了一个答案/问题。 Here's my answer
总之,您需要首先将字符串格式化为标准化格式,然后您可以将该字符串与新的Date(字符串)方法一起使用。这适用于许多浏览器(IE9 +,Chrome和Firefox)。
stringFormat = moment(dateObject).format("YYYY-MM-DDTHH:mm:ss");
date = new Date(stringFormat);
答案 2 :(得分:1)
发生这种情况是因为您没有为new Date
提供有效的日期格式。所以日期格式不正确。 JavaScript中的默认日期格式为dd/mm/yyyy
。
日期应该像(mm/dd/yyyy
):
12/24/2015
然后您可以使用var k = new Date(fullDate);
用于格式化日期的纯JavaScript解决方案(不含moment.js
):
var fullDate = "24/12/2016 02:00:00";
fullDate = fullDate.split(' ');
var date = fullDate[0].split(/\//);
var time = fullDate[1];
var newDate = date[1] + '/' + date[0] + '/' + date[2] + ' ' + time;
var k = new Date(newDate);