Bantuan teknis
Unix Timestamp ke tanggal: detik, milidetik, dan UTC
Ubah Unix timestamp menjadi tanggal. Pahami detik vs milidetik, UTC vs waktu lokal, ISO 8601, dan cara mengembalikan tanggal ke waktu epoch.
Unix timestamp menyatakan waktu relatif terhadap Unix epoch: 1970-01-01 00:00:00 UTC. Biasanya disimpan sebagai detik sejak epoch, atau milidetik sejak epoch.
Agar konversi benar, ketahui dulu satuannya. 1720000000 detik adalah 2024-07-03 09:46:40 UTC. 1720000000000 milidetik adalah instant yang sama.
Timestamp menunjuk satu instant. UTC, waktu lokal, atau zona IANA hanya mengubah cara instant itu ditampilkan.
Ini panduan konversi: timestamp ke tanggal, tanggal ke timestamp, UTC vs lokal, dan ISO 8601. Jika nilai tiba-tiba jadi 1970, biasanya detik/milidetik tertukar—lihat Unix Timestamp detik vs milidetik: kenapa tanggalnya jadi 1970.
Apa itu Unix timestamp?
Unix timestamp, Unix time, dan epoch time biasanya berarti waktu yang telah berlalu sejak 1970-01-01 00:00:00 UTC. Angkanya bukan string tanggal berlabel zona waktu. Instant yang sama bisa tampil sebagai jam berbeda di UTC, New York, Tokyo, atau Seoul. Unix timestamp tidak selalu detik—milidetik umum di praktik.
Apa itu Unix epoch?
Unix epoch adalah 1970-01-01 00:00:00 UTC. Timestamp 0 adalah instant itu. Timestamp positif berarti setelah epoch. Beberapa sistem mengizinkan timestamp negatif untuk waktu sebelum epoch, tetapi dukungan bahasa dan rentang tanggal berbeda-beda.
Timestamp saya dalam detik atau milidetik?
1720000000 adalah detik; 1720000000000 adalah milidetik; keduanya instant yang sama. Petunjuk praktis: sekitar 10 digit sering detik, sekitar 13 digit sering milidetik. Jumlah digit hanyalah heuristik. Tanggal masa lalu atau masa depan, satuan lain, atau epoch kustom bisa terlihat berbeda. Konverter tanggal & waktu dapat mengonversi dengan detik, milidetik, atau otomatis (≤10 digit sebagai detik, ≥13 sebagai milidetik)—pilih satuan jika Anda mengetahuinya.
Mengapa satuan yang salah menghasilkan tanggal yang salah?
JavaScript Date mengharapkan milidetik. Menyerahkan 1720000000 seolah milidetik menghasilkan 1970-01-20 21:46:40 UTC. Memperlakukan milidetik sebagai detik, atau sebaliknya, mendarat di tanggal yang sangat berbeda. Untuk jalur 1970, lihat Unix Timestamp detik vs milidetik: kenapa tanggalnya jadi 1970.
new Date(1720000000);
// 1970-01-20T21:46:40.000Z
Cara mengonversi Unix timestamp dalam detik
Kalikan detik dengan 1000 untuk mendapat milidetik. JavaScript Date berbasis milidetik, jadi gunakan new Date(timestamp * 1000).
const timestamp = 1720000000;
const date = new Date(timestamp * 1000);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Cara mengonversi timestamp milidetik
Serahkan milidetik langsung ke Date. Jangan kalikan lagi timestamp milidetik dengan 1000.
const timestamp = 1720000000000;
const date = new Date(timestamp);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Mengapa timestamp yang sama menampilkan jam berbeda?
Unix timestamp adalah satu instant. Menampilkannya dalam UTC, waktu lokal, atau zona IANA pilihan mengubah wajah jam. Untuk 1720000000000, UTC adalah 2024-07-03 09:46:40. America/New_York pada tanggal itu adalah 2024-07-03 05:46:40 (EDT). Asia/Seoul adalah 2024-07-03 18:46:40 (UTC+9). Nilai New York dan Seoul itu berasal dari Intl, bukan slogan offset tetap.
Apakah Unix timestamp berisi zona waktu?
Tidak. Ia tidak menyimpan America/New_York atau Asia/Seoul. Timestamp menunjuk satu instant. Zona waktu diterapkan saat Anda memformat instant itu menjadi tanggal dan waktu yang terbaca manusia. Epoch didefinisikan relatif terhadap UTC; angkanya sendiri bukan “kolom zona waktu UTC”.
Unix timestamp vs ISO 8601
1720000000 dan 2024-07-03T09:46:40Z dapat mewakili instant yang sama. Unix adalah nilai numerik waktu yang berlalu. ISO 8601 adalah string tanggal-waktu yang terbaca dan bisa berakhir dengan Z (UTC) atau offset numerik. Z berarti UTC; kadang disebut Zulu. Keduanya bukan format yang sama.
Bagaimana mendapatkan Unix timestamp saat ini?
Di JavaScript, Date.now() adalah milidetik. Math.floor(Date.now() / 1000) adalah detik. Jangan menuliskan “sekarang” secara tetap di artikel; nilainya terus bergerak.
Date.now();
Math.floor(Date.now() / 1000);
Bisakah tanggal dikembalikan menjadi Unix timestamp?
Bisa. Dari string ISO UTC yang eksplisit, getTime() mengembalikan milidetik; bagi 1000 dan floor untuk mendapat detik.
const date = new Date("2024-07-03T09:46:40Z");
date.getTime();
// 1720000000000
Math.floor(date.getTime() / 1000);
// 1720000000
Hati-hati dengan format tanggal yang ambigu
03/07/2024 bisa berarti 7 Maret atau 3 Juli tergantung lokal. Utamakan tanggal dan waktu bergaya ISO dengan zona waktu atau offset. Konverter tanggal & waktu menolak tanggal numerik ambigu seperti 01/02/2026 dan meminta pemilih tanggal atau nilai bergaya ISO.
Bagaimana dengan waktu musim panas?
Unix timestamp tidak menyimpan bendera DST. Tampilan lokal menerapkan aturan zona. America/New_York memakai offset berbeda di musim dingin dan musim panas, jadi “New York adalah UTC-5” tidak berlaku sepanjang tahun.
Apakah Unix timestamp menyertakan detik kabisat?
POSIX/Unix time yang lazim tidak menghitung detik kabisat sebagai SI detik tambahan pada skala kontinu. Platform bisa berbeda. Untuk konversi sehari-hari, rincian ini bisa diabaikan.
Kesalahan umum konversi Unix timestamp
Kekeliruan berikut menghasilkan tanggal salah atau wajah jam salah:
Detik diperlakukan sebagai milidetik
Nilai detik modern lalu mendarat dekat 1970 di JavaScript Date.
Milidetik diperlakukan sebagai detik
Tanggal meloncat jauh ke masa depan.
Menganggap 10 atau 13 digit sebagai hukum
Jumlah digit adalah petunjuk, bukan jaminan.
Mencampuradukkan UTC dengan waktu lokal
Instant-nya sama; jam yang ditampilkan bisa berbeda.
Mengira zona waktu ada di dalam angka
Nama IANA diterapkan saat tampilan, tidak disimpan di timestamp.
Tanggal ambigu, slogan DST, atau ×1000 ekstra
Pakai masukan bergaya ISO. Jangan kalikan lagi timestamp milidetik.
Contoh UTC yang sudah diverifikasi
Jam UTC berikut dihitung, bukan ditebak:
| Masukan | Satuan | UTC |
|---|---|---|
| 0 | detik | 1970-01-01 00:00:00 |
| 1720000000 | detik | 2024-07-03 09:46:40 |
| 1720000000000 | milidetik | 2024-07-03 09:46:40 |
| 1720000000 | milidetik | 1970-01-20 21:46:40 |
Panduan keputusan konversi yang sederhana
Jika sumber menamai satuan, pakai itu. Jika tidak, jumlah digit adalah petunjuk—lalu cek apakah tanggalnya masuk akal. Ubah detik ke milidetik jika API membutuhkan ms. Pilih UTC, lokal, atau zona IANA untuk tampilan. ISO 8601 berguna untuk penyimpanan dan pertukaran.
- Punya Unix timestamp
- Satuan disebutkan? Pakai; jika tidak, cek magnitudo
- Detik? ×1000 jika API butuh milidetik
- Milidetik? Pakai langsung di API berbasis ms
- Tampilkan sebagai UTC, lokal, atau zona IANA
- Perlu string? ISO 8601 mungkin cocok
Timestamp menunjuk suatu titik waktu. UTC, waktu lokal, atau zona waktu hanya memutuskan bagaimana instant itu ditunjukkan kepada orang.
Ubah Unix timestamp di peramban
NEXNARA Konverter tanggal & waktu mengonversi detik dan milidetik Unix, menampilkan UTC, waktu lokal, dan ISO 8601, serta mengonversi antarzona IANA.
Mode Unix mendukung detik, milidetik, satuan otomatis, waktu sekarang, dan tanggal-ke-timestamp. Mode zona waktu mencari nama IANA, memakai zona peramban, dan menerapkan offset Intl yang sadar DST. Mode format punya keluaran terbaca lokal, tampilan 12/24 jam, dan penjaga tanggal ambigu. Selisih tanggal adalah mode terpisah.
Konversi memakai API Date dan Intl di peramban. Nilai di luar jangkauan Date ditolak. Satuan otomatis tidak menebak nilai 11–12 digit; pilih detik atau milidetik.
Konversi tanggal dan timestamp itu sendiri terjadi di peramban. Masukan tidak dikirim ke server NEXNARA untuk konversi. Iklan dan fitur situs lain tetap memakai jaringan.
Tempel timestamp di Konverter tanggal & waktu dan bandingkan UTC, waktu lokal, serta ISO 8601 sebelum memilih satuan.
FAQ
Bagaimana mengonversi Unix timestamp menjadi tanggal?
Ketahui satuannya. Untuk detik di JavaScript, pakai new Date(n * 1000). Untuk milidetik, pakai new Date(n). Lalu format sebagai UTC, lokal, atau suatu zona.
Unix timestamp dalam detik atau milidetik?
Bisa keduanya. Sekitar 10 digit sering berarti detik dan sekitar 13 sering milidetik, tetapi itu heuristik, bukan aturan.
Mengapa timestamp saya menampilkan 1970?
Biasanya nilai detik dibaca sebagai milidetik. Lihat Unix Timestamp detik vs milidetik: kenapa tanggalnya jadi 1970.
Apakah Unix timestamp selalu UTC?
Epoch didefinisikan relatif terhadap UTC, dan angkanya menunjuk satu instant. Zona waktu tampilan terpisah. Itu bukan “kolom zona waktu UTC” yang tersimpan.
Apakah Unix timestamp berisi zona waktu?
Tidak. Ia tidak membawa pengenal IANA. Zona waktu diterapkan saat Anda memformat instant.
Bagaimana mengonversi tanggal menjadi Unix timestamp?
Dari string ISO UTC, date.getTime() adalah milidetik; Math.floor(date.getTime() / 1000) adalah detik.