메뉴 건너뛰기

2014.02.27 10:09

날짜 간의 일수 계산

조회 수 7551 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script>
function f_leapyear(yy)  //윤달 계산
{
 if (yy%4==0 && yy%100!=0 || yy%400==0)
  return 1;
 else
  return 0;
}

// Check how many days there are on the inputted year and month
// 년과 달을 입력하면, 한달에 몇일이 있는지 확인하는 함수입니다.
function f_dayofmonth(yy,mm)
{
 switch (mm){
  case 1: case 3: case 5: case 7: case 8: case 10: case 12:
   return 31;
  case 4: case 6: case 9: case 11:
   return 30;
  case 2:
   return 28 + f_leapyear(yy);
 }
}

function day_cal(yy, mm, dd){ //해당년도만의 일수 계산
 var tot = 0;
 for(var i=1;i<mm;i++){
  tot += f_dayofmonth(yy,i);
 }
 return tot+dd;
}
function getDiffDay(val1, val2){ //날짜 일수 계산
 var sdate_year = Number(val1.substr(0,4));
 var sdate_month = Number(val1.substr(4,2));
 var sdate_day = Number(val1.substr(6,2));
 var edate_year = Number(val2.substr(0,4));
 var edate_month = Number(val2.substr(4,2));
 var edate_day = Number(val2.substr(6,2));
  var year_result = edate_year-sdate_year;
 
 var tot = 0;
 for(i=sdate_year;i<edate_year+1;i++){ 
  tot += f_leapyear(i);
 }
 
 tot += year_result*365;  //년도 차이 일수 계산
 tot += -day_cal(sdate_year, sdate_month, sdate_day)+1;  //시작 날짜 일수 계산
 tot += day_cal(edate_year, edate_month, edate_day);   //종료 날짜 일수 계산
 
 return tot;
}
</script>
</HEAD>
 <BODY>
<script>
alert(getDiffDay('20090101', '20090228'));
</script>
</BODY>
</HTML>

List of Articles
번호 제목 날짜 조회 수
247 바닐라 JS, ECMAScript 개념 file 2023.01.20 109
246 마우스 오른쪽버튼 , 드래그 선택 차단 2023.01.12 118
245 패스워드, 확인패스워드가 맞는지 체크 2023.01.12 129
244 Node.js와 npm(+ npx)의 개념 2023.01.20 134
243 비동기 작업의 원리 (JavaScript 엔진, Web API, Task Queue, Event Loop) file 2023.01.20 138
242 개발자도구 F12키 막기 file 2023.01.12 169
241 페이지 이동 2021.03.26 190
240 getYear(); 크롬, 파이어폭스 에서 제대로 작동 안하는 문제 2021.03.26 197
239 default 매개변수(매개변수 기본값) 2021.03.26 199
238 자주쓰는 것들 2021.03.26 203
237 split, join, replace, replace_all 2021.03.26 204
236 폼안에 태그명, 함수명 같을때 오류 2021.03.26 214
235 현재 날짜, 시간 ( Month + 1 에 대해서 ) 2021.03.25 218
234 Date 객체로 원하는 날짜, 시간 표현하기 2021.08.20 223
233 Javascript - 입력한 년, 월의 마지막 날짜 구하기 2021.03.09 224
232 3자리 마다 쉼표만 찍어주는 number_format 함수 2021.03.26 225
231 오브젝트 속성 2021.03.25 237
230 월의 마지막 날짜 계산하기 2021.08.20 242
229 대소문자 변경 (대문자를 소문자로, 소문자를 대문자로) 2021.08.20 261
228 Javascript - form태그 내부 ajax처리시 2번 전송되는 현상 2021.03.09 268
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved