[Javascript] 날짜 차이 구하기

2013. 12. 27. 08:35WEB/Javascript

자바스크립트에서는 날짜를 표현하는 Date개체를 지원합니다. 하지만 두 날짜의 차이를 구하기 위한 별도의 지원을 하고 있지 않습니다. 여기서는 두 날짜 개체의 차이를 구하는 방법을 언급합니다.

Date 개체

Date개체는 날짜를 표현하는 개체로 1970년 1월 1일을 기준으로 Milliseconds 값으로 날짜를 표현합니다. 즉 Milliseconds값을 지정하여 Date개체를 생성할 수 도 있고, 또 두 Date를 빼면 Milliseconds 값으로 반환합니다.

자세히 말해서 Date개체는 1970년 1월 1일 전후로 285,616년(±100,000,000 Milliseconds)까지 표현합니다.

날짜의 차이 구하기

Date개체의 특성을 바탕으로 날짜의 차이는 아래와 같이 직접 계산을 통해 쉽게 구하실 수 있습니다.

var firstDate = new Date(2010, 10, 1);
var secodDate = new Date(2010, 12, 31);

var diffMilSec = firstDate - secodDate;
var diffSec = diffMilSec / 1000;
var diffMin = diffSec / 60;
var diffHour = diffMin / 60;
var diffDay = diffHour / 24;

위의 공식을 활용하여 메서드로 만들어 활용할 수 도 있습니다.

function getDiffDays(first, second) 
{
    return (second-first)/(1000*60*60*24)
}
...