js判断日期是否合法

function isDateValid(year, month, day) {
  // 创建一个Date对象,将年、月、日作为参数传入
  // 注意:在JavaScript中,月份是从0开始的,所以实际月份要减1
  var date = new Date(year, month - 1, day);
  
  // 使用getFullYear()、getMonth()和getDate()方法获取日期对象的年、月、日
  var validYear = date.getFullYear() === year;
  var validMonth = date.getMonth() === month - 1;
  var validDay = date.getDate() === day;
  
  // 如果年、月、日的值和传入的参数相等,且日期对象的时间有效,则日期合法
  return validYear && validMonth && validDay && !isNaN(date.getTime());
}

console.log(isDateValid(2022, 12, 31));  // true
console.log(isDateValid(2022, 13, 31));  // false,无效的月份
console.log(isDateValid(2022, 2, 29));   // false,2022年不是闰年,2月没有29日
console.log(isDateValid(2022, 2, 28));   // true

你可能感兴趣的:(javascript,前端,开发语言)