/// 同事找了半天,没找到一个对的正则表达式
/// 就顺手写下了这个函数
function ChechIsDate(dateStr) {
/// 验证是否为char8类型的日期
if (!((dateStr) && (dateStr.length ==8)) {
return false;
}
try {
var tmpDate = new Date();
tmpDate.setFullYear(parseInt(dateStr.substr(0, 4), 10), parseInt(dateStr.substr(4, 2), 10) - 1,
parseInt(dateStr.substr(6, 2), 10));
var yearStr = tmpDate.getFullYear().toString(10);
var monthStr = (tmpDate.getMonth() + 1).toString(10);
monthStr = (monthStr.length == 1) ? "0" + monthStr : monthStr;
var dayStr = tmpDate.getDate().toString(10);
dayStr = (dayStr.length == 1) ? "0" + dayStr : dayStr;
var tmpDateStr = yearStr.concat(monthStr).concat(dayStr);
return (tmpDateStr == dateStr);
}
catch (ex) {
return false;
}
return false;
}