mam problem w wliczeniu daty jeśli chodzi o luty, który ma mniej dni niż inne m-ce. Napisałam kod, który wylicza mi żeby po wpisaniu daty do inputa odejmował mi 1 dzień i dodawał 3 mce. I wszystko super gra prócz daty 01.03.2019r. Ponieważ mam ustawioną funkcję, że najpierw odejmuje mi 1 dzień (zostaje 28.02.2019) a potem dodaje 3 mce (zostaje 28.06.2019) - to wylicza mi to błędnie i to chyba jedyny przypadek, że to jest błędne. Chciałabym to zamienić, - najpierw dodawać 3 mce a potem odejmować dzień, ale wtedy sypie mi się funkcja. Może ktoś coś doradzi?
document.querySelector('#a').addEventListener('input', function () {
var ts = Date.parse(this.value);
if (isNaN(ts)) {
return;
}
var date = new Date(new Date(ts) -86400000); // w milisekundach - x(1) dni x 24 godzin, 60 minut x 60 sekund x 1000 milisekund
date.setMonth(date.getMonth() +4); //dodaje 3 mce
var y = date.getFullYear();
var m = date.getMonth(); // JS numeruje miesiące od 0 do 11
var d = date.getDate();
console.log(d);
document.querySelector('#b').value = y + '-' + (m > 9 ? '' : '0') + m + '-' + (d > 9 ? '' : '0') + d;
}, false);