반응형
자바 스크립트로 특정 날짜간의 차이 일수를 구하는 것은 크게 어렵지 않다.
MySQL DB에서는 DATEDIFF 함수를 이용하면 쉽게 구해지지만 자바스크립트에는 그런 기능이 없으므로 날짜간의 뺄셈을 이용하여 구하는 방법밖에는 없다.
간단하게 정리하면 비교하고자 하는 날짜를 밀리세컨드(millisecond) 단위로 변한한 뒤 두 날짜를 빼어 남은 값으로 계산하는 것이다.
아래 코드는 8월 27일부터 9월 1일까지의 전체 일수를 계산하는 예제이다.
<script type="text/javascript" language="javascript"> var stDate = new Date(2015, 7, 27) ; var endDate = new Date(2015, 8, 1) ; var btMs = endDate.getTime() - stDate.getTime() ; var btDay = btMs / (1000*60*60*24) ; document.writeln(btDay); </script>
위의 샘플코드를 실행하면 두 날짜간의 차이는 "5"를 반환한다. 해당 일수는 두 날짜를 포함하고 있지 않음에 유의하자.
그리고 위의 설명과는 다르게 8월 27일을 "2015, 7, 27", 9월 1일을 "2015, 8, 1" 로 지정하였다.
이는 자바스크립트에서 달을 사용하는 구간이 0 ~ 11 까지 이기 때문이다. 즉 우리가 알고 있는 달에서 1 을 빼주면 된다.
즉, 0은 1월, 1은 2월, 2는 3월을 뜻한다고 보면 된다. (기억하자 !!)
'Language > JQuery' 카테고리의 다른 글
[Javascript] JSON 형태의 데이터 생성하기 (3) | 2016.03.09 |
---|---|
[jQuery] Ajax를 이용하여 파일 전송하기(Ajax File Upload) (0) | 2015.08.10 |
[jQuery] 1.x 하위 호환성 문제 해결 (1) | 2015.05.06 |
[jQuery] Radio button checked 오류 (0) | 2015.04.22 |
[jQuery] Ajax Form 데이터 전송하기 (8) | 2015.03.30 |