Memahami Timezone

Timezone adalah salah satu aspek paling menantang dari pemrograman waktu. Panduan ini menjelaskan cara menangani mereka dengan benar.

Apa itu Timezone?

Timezone adalah wilayah Bumi yang mengamati waktu standar yang seragam. Offset dari UTC (misalnya UTC+1, UTC-5). Ada 24 timezone utama (satu per jam), tetapi banyak offset setengah jam dan bahkan seperempat jam. Aturan politik, bukan geografi, menentukan batas timezone. Timezone berubah—negara menyesuaikan batas dan aturan DST. Data timezone memerlukan pembaruan.

Daylight Saving Time

Banyak timezone menggeser jam satu jam di musim semi ("spring forward") dan mundur di musim gugur ("fall back"). Ini menciptakan jam yang hilang (jam melompat dari 2:00 ke 3:00) dan jam yang berulang (3:00 kembali ke 2:00). Ambiguitas ini menyebabkan bug. UTC tidak memiliki DST—inilah mengapa Anda harus menyimpan waktu dalam UTC dan konversi ke lokal untuk tampilan.

Praktik Terbaik

Simpan semua timestamp di UTC dalam database. Hanya konversi ke timezone lokal untuk tampilan kepada pengguna. Gunakan library yang menangani timezone (Moment-Timezone, date-fns-tz, Luxon). Jangan mencoba menghitung offset timezone secara manual. Untuk aplikasi global, deteksi timezone pengguna atau biarkan mereka memilih. Tampilkan waktu dalam zona mereka untuk kegunaan yang lebih baik.

Coba Alat

Converter Timestamp

Converter Timestamp

Artikel Terkait