【发布时间】:2015-06-22 08:28:40
【问题描述】:
在 chrome 中,我试图检查日期是否有效。
有一个变量:
var d = new Date('9/'); // Not a correct format
在 Chrome 中
console.log(new Date('9/')); // Output: Sat Sep 01 2001 00:00:00 GMT+0530 (India Standard Time) Which is wrong as I am providing wrong date.
在火狐中
console.log(new Date('9/')); // Output: Invalid Date
同样使用date.toLocaleString()在firefox中有输出06 May 2007 00:00:00
在 chrome 中是 1/9/2001;
所以我的问题是如何在 chrome 中验证日期并确保代码免受这些差异的影响。如果需要更多详细信息,请在评论中写下。
【问题讨论】:
-
使用momentjs.com。
-
@MattBall this 或类似的东西应该是答案。站在前人的肩膀上……也许做得更好。
-
@MattBall 我做不到,我需要 javascript 解决方案。页面已经有很多框架。
-
JavaScript 库仍然是 JavaScript。 “太多的库”是不引入另一个库的一个不好的理由(出于正确的原因)。如果您想要跨浏览器表现相同的东西,当不同的浏览器不这样做时,使用库。
-
一些正则表达式解决方案? @MattBall
标签: javascript google-chrome date cross-browser