길이가 8 인 문자열을 ddmmyyyy 형식으로 입력하는 날짜 유효성 검사기를 작성하려고합니다. 유효한 날짜에 대한 모든 기본 사항을 확인하고 그 결과로 true 또는 false를 반환해야합니다.날짜 유효성 검사기 만들기
나는 순간과 같은 추가 라이브러리를 사용할 수 없으며 정규 표현식을 사용할 수 없습니다 (이것은 숙제가 아니며 단지 이러한 제약 조건 내에서 작동하도록되어 있습니다).
사람들이 내가 아래에 무엇이 잘못되었는지 말할 수 있다면 감사하겠습니다!
function isValidDate(i) {
if (i.length == 8) {
var dd = i.substring(0, 2);
var mm = i.substring(2, 4);
var yyyy = i.substring(4, 7);
var day = parseInt(dd,10);
var month = parseInt(mm,10);
var year = parseInt(yyyy,10);
if (year % 4 != 0 && day = 29 && month = 02) {
return false;
} else if (day > 31) {
return false;
} else if (month > 12) {
return false;
} else {
return true;
}
} else {
return false;
}
return true;
}
문자열을 변수'yyyy','mm','dd'로 분할 한 후에는 해당 데이터에서 새 Date 객체를 만들고 Date 객체가 Date 객체를 만들기 위해 계류 된 동일한 변수를 포함하는지 확인할 수 있습니다. – Epsil0neR
귀하의 함수는 30 일 밖에 걸리지 않는 달에 대해 31 일을 허용합니다. – Barmar
또한 윤년을 제외하고 2 월 30 일과 2 월 31 일까지 허용하지만 2 월 29 일을 허용하지 않습니다 (그러나 윤년의 세기 규칙은 알지 못합니다). – Barmar