.
1. Membuat Instance Date
Untuk mendapatkan waktu dan tanggal tepat pada saat ini, kita perlu membuat objek baru dari konstruktor Date.
const sekarang = new Date();
console.log(sekarang); // Output: Thu May 14 2026 00:20:08 GMT+0700 (Western Indonesia Time)
2. Mengambil Komponen Tanggal Secara Spesifik
Objek Date menyediakan berbagai method untuk mengambil bagian tertentu dari waktu. Perlu diingat bahwa JavaScript menggunakan sistem 0-index untuk bulan (0 = Januari).
Method yang Sering Digunakan:
| Method | Fungsi | Rentang Nilai |
getFullYear() |
Mengambil tahun | Contoh: 2026 |
getMonth() |
Mengambil bulan | 0 (Jan) - 11 (Des) |
getDate() |
Mengambil tanggal | 1 - 31 |
getDay() |
Mengambil hari dalam seminggu | 0 (Minggu) - 6 (Sabtu) |
getHours() |
Mengambil jam | 0 - 23 |
getMinutes() |
Mengambil menit | 0 - 59 |
getSeconds() |
Mengambil detik | 0 - 59 |
getTime() |
Mendapatkan Timestamp | Milidetik sejak 1 Jan 1970 |
3. Contoh Implementasi: Membuat Format Tanggal Lokal
Karena getMonth() dan getDay() menghasilkan angka, kita biasanya perlu mengubahnya menjadi nama bulan atau hari secara manual.
const waktu = new Date(); const daftarBulan = [ "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"
]; const tanggal = waktu.getDate();
const bulan = daftarBulan[waktu.getMonth()];
const tahun = waktu.getFullYear(); console.log(`Hari ini adalah tanggal: ${tanggal} ${bulan} ${tahun}`);
// Output: Hari ini adalah tanggal: 14 Mei 2026
4. Cara Modern: toLocaleDateString()
Jika Anda tidak ingin repot membuat array nama bulan, JavaScript memiliki cara yang sangat cerdas untuk memformat tanggal berdasarkan lokasi (negara) pengguna.
const hariIni = new Date(); // Format Indonesia
const opsi = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
console.log(hariIni.toLocaleDateString('id-ID', opsi));
// Output: Kamis, 14 Mei 2026
5. Memahami Timestamp (getTime())
getTime() mengembalikan angka milidetik yang telah berlalu sejak 1 Januari 1970 (dikenal sebagai Unix Epoch). Ini adalah cara paling akurat untuk membandingkan dua tanggal.
-
Pengecekan Durasi:
JavaScriptconst waktuA = new Date("2026-05-14").getTime(); const waktuB = new Date("2026-05-15").getTime(); const selisih = waktuB - waktuA; const satuHari = 1000 * 60 * 60 * 24; // Milidetik dalam sehari console.log(selisih / satuHari); // Output: 1 (Hari)
Kesimpulan
-
Gunakan
new Date()untuk menangkap momen saat ini. -
Ingat bahwa Bulan dimulai dari angka 0.
-
Gunakan
toLocaleDateString()untuk cara cepat memformat tanggal sesuai bahasa negara tertentu. -
Gunakan Timestamp (
getTime()) jika Anda perlu menghitung selisih waktu atau melakukan perbandingan tanggal.