这个日期格式怎么判断,要求输入这两种格式的日期。

chengxing 2005-09-26 05:21:21
“2005/09/08“,“20050908“,这两种格式的都合法,怎么判断啊。

function IsDate(s) {
var re = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})$/
var m = re.exec(s);
if (m == null) return false;
var d = new Date(m[1],m[3]-1,m[4]);
return d.getFullYear()==m[1] && d.getMonth()==(m[3]-1) && d.getDate()==m[4];
}

这个函数只能判断“2005-09-08“格式的,如果我要判断"2005/09/08"这个表达式怎么改,谢谢大家!
...全文
160 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxz7531 2005-09-26
  • 打赏
  • 举报
回复
function IsDate(s) {
if((/^\d{8,8}$/g).test(s)) s=s.substring(0,4)+"/"+s.substring(4,6)+"/"+s.substring(6);
var re = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})$/
var m = re.exec(s);
if (m == null) return false;
var d = new Date(m[1],m[3]-1,m[4]);
return d.getFullYear()==m[1] && d.getMonth()==(m[3]-1) && d.getDate()==m[4];
}

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧