>  기사  >  웹 프론트엔드  >  JavaScript를 사용하여 \"mm/dd/yyyy\" 형식의 날짜를 확인하는 방법은 무엇입니까?

JavaScript를 사용하여 \"mm/dd/yyyy\" 형식의 날짜를 확인하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-30 03:42:28669검색

How to Validate Dates in

JavaScript에서 "mm/dd/yyyy" 형식의 날짜 유효성 검사

특정 형식의 날짜 유효성 검사는 데이터 무결성과 신뢰성에 매우 중요합니다. 예를 들어 "mm/dd/yyyy" 형식은 많은 애플리케이션에서 일반적으로 사용되며 적절한 유효성 검사가 필요합니다. 다음 형식의 날짜를 확인하는 JavaScript 함수를 살펴보겠습니다.

원래 함수

질문에 제공된 코드에 몇 가지 문제가 있는 것 같습니다. isDate 함수는 먼저 날짜 문자열의 길이를 확인하고 적절한 슬래시가 있는지 확인합니다. 그런 다음 문자열에서 월, 일, 연도를 추출하고 연도 범위의 유효성을 검사합니다.

그러나 가장 큰 문제는 계산된 밀리초를 Date 개체에서 얻은 날짜 부분과 비교하는 것입니다. 이 접근 방식은 날짜 문자열이 유효하지 않은 경우 오류가 발생하기 쉽습니다.

간단한 접근 방식

다음 함수는 "mm/dd/yyyy"에서 날짜를 확인하는 보다 간단하고 안정적인 방법을 제공합니다. 형식:

<code class="javascript">function isValidDate(dateString) {
    // Validate the pattern
    if (!/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(dateString)) {
        return false;
    }

    // Parse the date parts
    const parts = dateString.split("/");
    const day = parseInt(parts[1], 10);
    const month = parseInt(parts[0], 10);
    const year = parseInt(parts[2], 10);

    // Check the month and year ranges
    if (year < 1000 || year > 3000 || month === 0 || month > 12) {
        return false;
    }

    // Consider leap years
    const monthLengths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    if (year % 400 === 0 || (year % 100 !== 0 && year % 4 === 0)) {
        monthLengths[1] = 29;
    }

    // Validate the day in the context of the month
    return day > 0 && day <= monthLengths[month - 1];
}</code>

사용 및 오류 처리

이 함수를 사용하려면 날짜 문자열을 인수로 전달하기만 하면 됩니다. 날짜가 "mm/dd/yyyy" 형식으로 유효하면 true를 반환하고 유효하지 않거나 필수 형식을 충족하지 않으면 false를 반환합니다.

사용자에게 경고하거나 오류를 표시하여 유효성 검사 오류를 적절하게 처리합니다. 메시지. 이렇게 하면 신청서에서 유효한 날짜만 처리됩니다.

위 내용은 JavaScript를 사용하여 \"mm/dd/yyyy\" 형식의 날짜를 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.