我已经尝试了两个流行的答案,来自Detecting an "invalid date" Date instance in JavaScript for checks valid dates。我在 IE8 中测试了它们——不幸的是,它们都令人失望。在这里查看http://jsfiddle.net/Lijo/uzSU6/2/
是否有更好的 JavaScript 代码可以在 IE8 + Chrome + Firefox 中运行?
注意:令我惊讶的是,它在 Firefox 中也不能很好地工作......
健康)状况
日期格式应为带有斜杠 (/) 的美国日期格式
代码
isValidDateCheck2('12/33/2012') ;
isValidDateCheck1('12/12/2012') ;
function isValidDateCheck1(d)
{
alert(Object.prototype.toString.call(d));
if ( Object.prototype.toString.call(d) !== "[object Date]" )
{
alert('Not Valid');
}
if(!isNaN(d.getTime()))
{
alert(d.getTime());
}
}
function isValidDateCheck2(d)
{
var timestamp=Date.parse(d);
alert(timestamp);
if (isNaN(timestamp)==false)
{
var date=new Date(timestamp);
alert(date);
}
}
编辑
@mplungjan 方法(第一个建议)列在http://jsfiddle.net/Lijo/uzSU6/7/中。对于一种情况,这在 IE8 中失败了 - http://jsfiddle.net/Lijo/uzSU6/12/。