Bagaimana cara menambahkan tanggal berlangganan berikutnya jika bulan Januari dari 29,30,31 untuk menghindari tanggal yang sama di bulan Februari di javascript? [duplikat]

Saya ingin menetapkan tanggal month dan date bulan depan sejak tanggal berlangganan.

Contoh: Jika hari ini 30th January, maka tanggal berlangganan berikutnya harus berubah menjadi 30 days after 30th Jan artinya jika bulan tersebut bukan bulan kabisat maka harus disetel ke 2nd March, bukan 30th Feb.

Bersamaan dengan ini juga ketika bulannya December, bulannya harus disetel ke Jan.

Ini adalah kode yang saya pikir akan digunakan untuk menyelesaikan masalah Dec to Jan saya, tetapi saya masih tidak yakin tentang masalah February.

var now = new Date();
if (now.getMonth() == 11) {
    var current = new Date(now.getFullYear() + 1, 0, now.getDate());
} else {
    var current = new Date(now.getFullYear(), now.getMonth() + 1, now.getDate());
}

person Biku7    schedule 14.01.2021    source sumber
comment
Apa yang Anda gambarkan tidak terjadi. Anda bisa menambahkan 1 bulan atau menambahkan 30 hari tetap, hasilnya serupa. 31 Jan + 1 bulan menghasilkan 2 atau 3 Mar, tergantung apakah itu tahun kabisat atau bukan. 31 Jan + 30 hari menghasilkan 1 atau 2 Mar (tergantung tahun kabisat).   -  person RobG    schedule 14.01.2021


Jawaban (1)


menambahkan 30 hari ke tanggal saat ini secara otomatis akan mendapatkan tanggal aktual berikutnya setelah 30 hari

objek Tanggal akan menghitung tanggal berikutnya berapa pun jumlah hari dalam bulan tersebut

let someDate = new Date();
let numberOfDays = 30;

someDate.setDate(someDate.getDate() + numberOfDays); 
let dateFormated = someDate.toISOString().substr(0,10);
console.log(dateFormated);

someDate = new Date('2020-09-10');
someDate.setDate(someDate.getDate() + numberOfDays); 
dateFormated = someDate.toISOString().substr(0,10);
console.log(dateFormated);

person Ahmed Gaafer    schedule 14.01.2021
comment
Tapi ini adalah saat bulan sebelumnya memiliki 30 hari. Bagaimana jika memiliki 31 hari dan seterusnya? - person Biku7; 14.01.2021
comment
Saya menambahkan contoh baru - person Ahmed Gaafer; 14.01.2021
comment
jadi menambahkan tanggal secara otomatis menentukan bulannya juga? Berarti saya tidak perlu setMonth secara eksternal setelah melakukan ini? @Ahmed - person Biku7; 14.01.2021
comment
ya, Anda hanya perlu menambahkan hari - person Ahmed Gaafer; 14.01.2021
comment
Oke. Dan juga jika bulannya Desember, tetap akan diatur bulan dan tanggalnya masing-masing dengan Januari? - person Biku7; 14.01.2021
comment
ya dan juga ganti tahun ke tahun berikutnya - person Ahmed Gaafer; 14.01.2021
comment
dapatkah Anda menambahkan contoh terakhir sesuai tanggal yang ditetapkan: 1) 30 Jan 2021 2) 31 Des 2020 lalu beri tahu saya hasilnya!!! - person Biku7; 14.01.2021