JAVASCRIPT 에서도 PHP 처럼 date('Y-m', strtotime($month.' -1 year')); 이런 식으로 날짜를 계산해 보자.
function date_calc(ymd, calc) {
var date = new Date( ymd.substring(0, 4), ymd.substring(5, 7), ymd.substring(8, 10) );
var year = date.getFullYear();
var month = date.getMonth() - 1;
var day = date.getDate();
calc = calc.split(' ');
if (calc[1] == 'year') date = new Date(year + parseInt(calc[0]), month, day);
else if (calc[1] == 'month') date = new Date(year, month + parseInt(calc[0]), day);
else date = new Date(year, month, day + parseInt(calc[0]));
year = date.getFullYear();
month = ("0" + (1 + date.getMonth())).slice(-2);
day = ("0" + date.getDate()).slice(-2);
/*
// 이 부분으로 변경하고
year = date.getFullYear().toString().substr(2);
month = ("0" + (1 + date.getMonth())).slice(-2);
*/
return year + "-" + month + "-" + day;
// 이 부분으로 변경하면
// return year + month;
}
console.log( date_calc('2023-09-30', '+1 day') ); // 2023-10-01
// 변경하면 2310 이 된다.
console.log( date_calc('2023-09-30', '+23 day') ); // 2023-10-23
console.log( date_calc('2023-09-30', '-2 year') ); // 2021-09-30
console.log( date_calc('2023-09-30', '+3 month') ); // 2023-12-30