logo logo

Portal media terdepan yang menyajikan informasi terkini seputar dunia teknologi, gadget, dan inovasi digital di Indonesia.

Sentral Media

Langganan Update Teknologi

Dapatkan rangkuman berita mingguan langsung ke email Anda.

Daftar Newsletter

Surabaya, Indonesia

Kota Surabaya, Jawa Timur

Email: redaksi@sentralmediateknologi.id

Frontend & Ui/Ux

Manipulasi Waktu: Mengubah Format Tanggal (Intl.DateTimeFormat). gambar

Mengatur format tanggal secara manual menggunakan getDate(), getMonth(), dan getFullYear() seringkali melelahkan, terutama jika aplikasi Anda harus mendukung berbagai bahasa atau zona waktu. JavaScript menyediakan solusi elegan melalui objek Intl.DateTimeFormat. Ini adalah bagian dari API Internasionalisasi (Intl) yang memungkinkan kita memformat tanggal dan waktu sesuai dengan standar negara tertentu secara otomatis.

avatar
Super Administrator

SentralMediaTeknologi.id


  • 14 Mei 2026
  • 00:24 WIB


1. Keunggulan Intl.DateTimeFormat

  • Multibahasa: Mengubah nama hari dan bulan ke bahasa apa pun (Indonesia, Inggris, Arab, Jepang, dll.) tanpa membuat array manual.

  • Adaptif: Menyesuaikan urutan tanggal (misal: di AS Bulan/Hari/Tahun, di Indonesia Hari/Bulan/Tahun).

  • Opsi Fleksibel: Kita bisa mengatur apakah ingin menampilkan nama hari secara lengkap, singkat, atau hanya angka.


2. Cara Penggunaan Dasar

Sintaks dasarnya adalah membuat objek formatter terlebih dahulu, lalu memasukkan tanggal yang ingin diformat.

JavaScript
const sekarang = new Date(); // Membuat formatter untuk lokasi Indonesia (id-ID)
const formatter = new Intl.DateTimeFormat('id-ID'); console.log(formatter.format(sekarang)); // Output: 14/05/2026

3. Menggunakan Objek Konfigurasi (Options)

Anda bisa mengontrol detail informasi yang ditampilkan dengan mengirimkan objek kedua sebagai konfigurasi.

JavaScript
const tanggal = new Date(); const opsi = { weekday: 'long', // 'long' (Kamis), 'short' (Kam), 'narrow' (K) year: 'numeric', // 'numeric' (2026), '2-digit' (26) month: 'long', // 'long' (Mei), 'short' (Mei), 'numeric' (5) day: 'numeric', // 'numeric' (14), '2-digit' (14) hour: '2-digit', minute: '2-digit', timeZoneName: 'short'
}; const formatIndo = new Intl.DateTimeFormat('id-ID', opsi);
console.log(formatIndo.format(tanggal));
// Output: Kamis, 14 Mei 2026 pukul 00.22 WIB

4. Perbandingan Berbagai Lokasi (Locale)

Lihat betapa mudahnya mengubah format untuk audiens global tanpa mengubah logika kode:

JavaScript
const tgl = new Date(); // Format Amerika Serikat (MM/DD/YYYY)
console.log(new Intl.DateTimeFormat('en-US').format(tgl)); // Output: 5/14/2026 // Format Inggris (DD/MM/YYYY)
console.log(new Intl.DateTimeFormat('en-GB').format(tgl)); // Output: 14/05/2026 // Format Arab (Saudi Arabia)
console.log(new Intl.DateTimeFormat('ar-SA').format(tgl)); // Output: ٢٧/١١/١٤٤٧ (Hijriah secara otomatis!)

5. Method Singkat: toLocaleDateString()

Jika Anda merasa new Intl.DateTimeFormat terlalu panjang untuk ditulis, Anda bisa menggunakan method bawaan objek Date yang menggunakan mesin yang sama di belakang layar:

JavaScript
const hariIni = new Date(); const hasil = hariIni.toLocaleDateString('id-ID', { day: '2-digit', month: 'short', year: 'numeric'
}); console.log(hasil); // Output: 14 Mei 2026

Kesimpulan

Bagian Fungsi
Locale (id-ID, en-US) Menentukan bahasa dan aturan regional.
weekday/month Mengubah angka menjadi teks (misal: 4 menjadi "Mei").
timeZone Mengatur waktu berdasarkan zona tertentu (misal: 'Asia/Jakarta').

Menggunakan Intl.DateTimeFormat adalah cara terbaik untuk memastikan aplikasi Anda terlihat profesional dan ramah bagi pengguna dari berbagai belahan dunia.

 

Stories

avatar

Jurnalis dan analis internasional, mengurai dinamika geopolitik, ekonomi global, dan konflik dunia dengan ketajaman dan kedalaman.


Bagikan artikel ini

Stay Connected