날짜 덧셈과 뺄셈 방법을 직접 작성하고 싶은데, 매달 일수를 판단하는 일이 포함됩니다. 2월이면 윤년을 판단하는 일도 포함됩니다. 신청과정에서 항상 문제가 있어서 확인했습니다. 예를 들어 특정 날짜에서 일수를 더하거나 빼려면 Date 객체의 setDate() 함수를 호출하면 됩니다. 구체적인 방법은 다음과 같습니다. 다음은:
function addDate(date,days){ var d=new Date(date); d.setDate(d.getDate()+days); var month=d.getMonth()+1; var day = d.getDate(); if(month<10){ month = "0"+month; } if(day<10){ day = "0"+day; } var val = d.getFullYear()+""+month+""+day; return val; }
그 중 date 매개변수는 YYYY-MM-DD 형식으로 더하거나 뺄 날짜이고, days 매개변수는 더하거나 뺄 일수를 전달합니다. 월을 더하거나 빼려면 setMonth() 및 getMonth()를 호출하면 됩니다. 반환된 월은 0부터 계산된다는 점에 유의하세요. 실제 달보다 한 달이 적으므로 그에 따라 1을 더합니다.
특수: 연, 월, 일을 결합할 때 직접 사용할 수 없으며 int 유형으로 합산되며 문자열로 변환되어야 합니다.