>  기사  >  웹 프론트엔드  >  JavaScript에서 두 날짜 간의 월 차이를 어떻게 계산합니까?

JavaScript에서 두 날짜 간의 월 차이를 어떻게 계산합니까?

DDD
DDD원래의
2024-11-12 07:32:02542검색

How do you calculate the difference in months between two dates in JavaScript?

JavaScript에서 날짜 간 월 차이 계산

JavaScript에서 두 Date() 개체 간의 차이를 확인하는 것은 간단한 프로세스일 수 있습니다. 그러나 이 차이에서 월 수만 추출하려면 이 값을 구성하는 해석이 다양하므로 신중한 고려가 필요합니다.

다양한 시나리오에 맞춰 월 차이를 계산하는 JavaScript 함수를 만들 수 있습니다. 특정 기준에 따라. 한 가지 가능한 방법은 두 날짜에서 연도, 월, 일을 구하고 이 값을 사용하여 개월 수를 계산하는 것입니다. 예:

function monthDiff(d1, d2) {
    var months;
    months = (d2.getFullYear() - d1.getFullYear()) * 12;
    months -= d1.getMonth();
    months += d2.getMonth();
    return months <= 0 ? 0 : months;
}

이 함수는 연도의 월 차이와 개별 날짜의 월 차이를 더하고 음수가 아닌 결과를 보장하기 위해 음수 값을 조정합니다.

이 함수를 사용하면 월 차이를 다음과 같이 계산하고 표시할 수 있습니다.

function test(d1, d2) {
    var diff = monthDiff(d1, d2);
    console.log(
        d1.toISOString().substring(0, 10),
        "to",
        d2.toISOString().substring(0, 10),
        ":",
        diff
    );
}

test(
    new Date(2008, 10, 4), // November 4th, 2008
    new Date(2010, 2, 12)  // March 12th, 2010
);
// Result: 16

test(
    new Date(2010, 0, 1),  // January 1st, 2010
    new Date(2010, 2, 12)  // March 12th, 2010
);
// Result: 2

test(
    new Date(2010, 1, 1),  // February 1st, 2010
    new Date(2010, 2, 12)  // March 12th, 2010
);
// Result: 1

이 테스트 사례에서 함수는 지정된 월 차이를 올바르게 계산합니다. 기간.

위 내용은 JavaScript에서 두 날짜 간의 월 차이를 어떻게 계산합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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