[JS] 날짜(Date) 연산 방법
현재 날짜와 현재 날짜로 부터 날짜를 연산하는 방법을 정리합니다.
var d = new Date(); // 오늘 일자 구하기 (yyyy-m-d) var today = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate(); // 오늘 일자 구하기 (yyyy-mm-dd) var today = d.getFullYear() + '-' + ('0' + (d.getMonth() + 1)).slice(-2) + '-' + ('0' + d.getDate()).slice(-2); // 이번 주 구하기 var current_week_begin = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + (d.getDate() - d.getDay() + 1); var current_week_end = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + (d.getDate() - d.getDay() + 7); // 한 달 전 var o = new Date(d.getFullYear(), d.getMonth(), d.getDate()); console.log(o.getFullYear() + '-' + o.getMonth() + '-' + o.getDate()); // 1년 전 var o = new Date(d.getFullYear() - 1, (d.getMonth() - 1), d.getDate()); console.log(o.getFullYear() + '-' + o.getMonth() + '-' + o.getDate());
주의1 : 달을 구하는 getMonth()는 0부터 시작됩니다. (0 ~ 11) 그래서 현재 달을 구하기 위해서는 +1 을 헤주셔야 합니다.
주의2 : 이번 주를 구할때는 월요일이 아닌 일요일로 시작됩니다. 때문에 달과 마찬가지로 +1을 해주셔야 합니다.