Perpustakaan tanggal ditambah tiga pembantu lintingan tangan adalah tumpukan standar untuk uang dan waktu. Browser sudah membawa semuanya di belakang Intl, dilokalkan untuk Indonesia, tanpa biaya download sama sekali.
new Intl.NumberFormat("id-ID", { style: "currency", currency: "IDR" })
.format(250000); // "Rp 250.000"
new Intl.DateTimeFormat("id-ID", { dateStyle: "long" })
.format(new Date()); // "26 Oktober 2026"
new Intl.RelativeTimeFormat("id-ID")
.format(-3, "day"); // "3 hari yang lalu"Tiga aturan yang membuatnya tetap murah
- Bangun pemformat sekali dan gunakan kembali: konstruksi mem-parsing data lokal dan merupakan bagian yang mahal.
- Biarkan lokal yang mengaturnya: jangan pernah memotong string yang diformat; tanyakan kepada Intl untuk bentuk suku cadang yang Anda perlukan.
- Simpan nomor sebagai angka dan format di tepinya; 'Rp 250.000' dengan pemisah yang salah adalah bug data, bukan bug formatter.
Satu peringatan yang terukur: Node dan browser menyetujui bentuk tampilan untuk lokal yang diuji, tetapi menguji setiap lokal baru satu kali di mana pun lokal tersebut dirender; hasil tes dicatat atau dilupakan.
Situs ini mencetak setiap tanggal artikel melalui Intl di empat lokal: edisi bahasa Indonesia bertuliskan 'Diterbitkan 24 Oktober 2026' dari judul yang sama yang digunakan edisi Perancis dan Spanyol. Tidak ada perpustakaan i18n di package.json.
