大家好,我是终南有客,一个热爱自由和创造,喜欢探索和发现新事物的软件开发者
js校验“YYYY-MM”格式日期只能小于当前月,例如“2023-05”
function validateDate(dateString) {
// 获取当前日期
var currentDate = new Date();
var currentYear = currentDate.getFullYear();
var currentMonth = currentDate.getMonth() + 1; // 月份从 0 开始,因此需要加 1
// 解析输入的日期
var parts = dateString.split("-");
var year = parseInt(parts[0], 10);
var month = parseInt(parts[1], 10);
// 校验日期格式
if (parts.length !== 2 || isNaN(year) || isNaN(month)) {
return false;
}
// 比较年份和月份
if (year > currentYear) {
return false;
} else if (year === currentYear && month >= currentMonth) {
return false;
}
return true;
}
// 示例用法
var inputDate = "2023-05";
if (validateDate(inputDate)) {
console.log("日期校验通过");
} else {
console.log("日期不符合要求");
}