This is the stack answer I followed: https://stackoverflow.com/a/5645110/1270259
To create:
let start = new Date(data.start_date);
let end = new Date(start.setMonth(start.getMonth() 1));
start = start.toISOString().split('T')[0]
end = end.toISOString().split('T')[0]
console.log(start, end);
- Expected:
start: 2022-07-23 end: 2022-08-23
- Actual:
start: 2022-07-23 end: 2022-07-23
Is this not how you properly add a month to a date? The stack answer states it is correct - am I missing something
CodePudding user response:
By calling start.setMonth
you end up updating the month on both dates. (This is noted in one of the comments on the answer you followed, but not in the answer itself.)
Separate the statements to only affect the date you want changed:
let start = new Date();
let end = new Date(start);
end.setMonth(end.getMonth() 1);
console.log(start, end)