Starting points for your own code. Run them in the environment shown below.
Node.js 22+ · ES module (.mjs)
Current inputs apply only to fields used by the example. Selected files are not embedded.
Install dependencies
const input = "1789790400";
const value = Number(input);
if (!Number.isFinite(value)) throw new Error("Enter a numeric timestamp");
// Magnitude is a heuristic; use explicit units for dates near 1970.
const milliseconds = Math.abs(value) < 1e11 ? value * 1000 : value;
const date = new Date(milliseconds);
console.log(date.toISOString());
console.log(new Intl.DateTimeFormat("ko-KR", {
timeZone: "Asia/Seoul", dateStyle: "medium", timeStyle: "long",
}).format(date));
console.log(Math.floor(date.getTime() / 1000));
Put it to work
1704067200 seconds is 2024-01-01 00:00:00 UTC, or 09:00 in Seoul.
Details that matter
Format and meaning
Select seconds or milliseconds explicitly. A 13-digit value usually represents milliseconds.
Using it correctly
Include Z or a time-zone offset such as +09:00 in date input.
Common pitfalls
Differences measure elapsed time. A calendar day around a daylight-saving transition may not be 24 hours.
Supported scope and limits
ISO 8601 dates with explicit time zones
Split inputs that exceed the limit. If a format or algorithm is unsupported, choose a tool that matches your requirements instead of silently changing the format.