kembali ke pelajaran

Tanggal terakhir dari sebuah bulan?

Tulis sebuah fungsi getLastDayOfMonth(tahun, bulan) yang mengembalikan tanggal terakhir dari sebuah bulan. Terkadang 30, 31, atau bahkan 28/29 untuk Februari.

Parameter:

  • tahun – tahun dalam empat-digit, sebagai contoh 2012.
  • bulan – bulan, dari 0 sampai 11.

Sebagai contoh, getLastDayOfMonth(2012, 1) = 29 (tahun kabisat, Feb).

Buka sandbox dengan tes.

Buat sebuah tanggal menggunakan bulan berikutnya, namun berikan 0 sebagai tanggalnya:

function getLastDayOfMonth(tahun, bulan) {
  let tanggal = new Date(tahun, bulan + 1, 0);
  return tanggal.getDate();
}

alert( getLastDayOfMonth(2012, 0) ); // 31
alert( getLastDayOfMonth(2012, 1) ); // 29
alert( getLastDayOfMonth(2013, 1) ); // 28

Normalnya, tanggal dimulai dari 1, namun secara teknis kita bisa berikan angka apapun, dan tanggal akan otomatis menyesuaikan. Sehingga ketika kita berikan 0, itu berarti “satu hari sebelum tanggal pertama untuk sebuah bulan”, dengan kata lain: “hari terakhir pada bulan sebelumnya”.

Buka solusi dengan tes di sandbox.