0

我正在开发一个 JavaScript 应用程序。我有两个不同的字符串日期31/10/20131/11/2013我创建了这两个日期的一个实例new Date(string).getTime();

但它显示了这个(相同的日期)作为结果:

console.log(date_s + " after new date " + date );

31/10/2013 after new date Fri Nov 1 00:00:00 UTC 2013

1/11/2013 after new date Fri Nov 1 00:00:00 UTC 2013
4

3 回答 3

1

你没有一个有效的字符串new Date(string)

一些初始化日期的例子

var my_date=new Date(2013,10,31)

以及http://www.w3schools.com/js/js_obj_date.asp上的所有文档

于 2013-10-30T13:51:04.407 回答
0

31/10/2013不是有效的日期字符串,除非您可能正在进行一些本地化。对于 en-US 的默认本地化设置,它应该是10/31/2013. 您的字符串的意思是“2013 年第 31 个月”,它推new Date('31/10/2013')到 2015 年的某个时间,因为这是由于“第 31 个月”而解决日期的地方。

于 2013-10-30T13:50:12.553 回答
0

如果您想要一个简单的解决方案,请尝试moment.js- 一个强大的 javascript 日期解析器/格式化程序/验证器/操纵器。

现在,您可以使用如下语法解析日期 [ doc ]:

//this will gives you a correct date object
moment('31/10/2013', 'DD/MM/YYYY').toDate(); 

否则,您总是可以欢迎拆分和重建日期对象。

于 2013-10-30T13:58:05.530 回答