
var res = dateStr.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);
if(res==null)(//格式不对)
这个,如果你接触过java,或者是sql语句的话就知道表示日期有很多格式(先不说分隔符多,光不同国家的标准来说也有很多),而且如果应用的话会根据需要判断某个字符串是否符合日期格式,所以无法给出答案。
不过用js判断日期除了你知道日期的格式,然后自己编写字符串处理及判断的方法以外,还有就是“正则表达式”(在字符串匹配中,这个非学不可)了。
我给你找了几个你看哪个是你需要的。
http://blog.csdn.net/weilee2009/article/details/8566962
http://hi.baidu.com/love5love/item/7fb622bb18b1afd084dd7993