Tech Help
Unix Timestamp-ээс огноо руу: секунд, миллисекунд, UTC тайлбарласан
Unix timestamp-ийг огноо болгож хөрвүүл. Секунд ба миллисекунд, UTC ба орон нутгийн цаг, ISO 8601, огноог epoch цаг руу буцааж хөрвүүлэхийг хар.
Unix timestamp нь Unix epoch-той харьцуулсан хугацааг илэрхийлнэ: 1970-01-01 00:00:00 UTC. Ихэвчлэн epoch-оос секунд эсвэл epoch-оос миллисекундээр хадгална.
Зөв хөрвүүлэхийн тулд эхлээд аль нэгжтэйгээ мэд. 1720000000 секунд нь 2024-07-03 09:46:40 UTC. 1720000000000 миллисекунд нь тэр мөч.
Timestamp нэг мөчийг тодорхойлно. UTC, орон нутгийн цаг эсвэл IANA бүс зөвхөн тэр мөч хэрхэн харагдахыг өөрчилнө.
Энэ бол хөрвүүлэлтийн гарын авлага: timestamp-ээс огноо, огнооноос timestamp, UTC орон нутгийн эсрэг, ISO 8601. Утга гэнэт 1970 оны огноо болвол ихэвчлэн секунд/миллисекундийн үл тохирол—үз Unix Timestamp секунд ба миллисекунд: огноо яагаад 1970 харуулдаг вэ.
Unix Timestamp гэж юу вэ?
Unix timestamp, Unix time, epoch time ихэвчлэн 1970-01-01 00:00:00 UTC-ээс хойшхи хугацааг хэлнэ. Тоо нь цагийн бүсийн шошготой форматласан огнооны мөр биш. Тэр мөч UTC, Нью-Йорк, Токио, Сөүлд өөр цагийн нүүрээр харагдаж болно. Unix timestamp үргэлж секунд биш—практикт миллисекунд түгээмэл.
Unix Epoch гэж юу вэ?
Unix epoch нь 1970-01-01 00:00:00 UTC. 0 timestamp нь тэр мөч. Эерэг timestamp epoch-оос хойш. Зарим систем epoch-оос өмнөх цагт сөрөг timestamp зөвшөөрнө, гэхдээ хэл болон огнооны хүрээний дэмжлэг өөр өөр.
Миний timestamp секунд үү, миллисекунд үү?
1720000000 секунд; 1720000000000 миллисекунд; нэг мөч. Практик шинж: ойролцоогоор 10 орон ихэвчлэн секунд, ойролцоогоор 13 миллисекунд. Оронгийн тоо зөвхөн эвристик. Өнгөрсөн эсвэл ирээдүйн огноо, өөр нэгж, эсвэл тусгай epoch өөрөөр харагдаж болно. Огноо, цаг хөрвүүлэгч секунд, миллисекунд эсвэл авто-оор хөрвүүлж чадна (≤10 орон секунд, ≥13 миллисекунд)—мэдэж байвал нэгжийг сонго.
Буруу нэгж яагаад буруу огноо өгдөг вэ?
JavaScript Date миллисекунд хүлээнэ. 1720000000-ийг миллисекунд гэж өгөхөд 1970-01-20 21:46:40 UTC гарна. Миллисекундийг секунд, эсвэл эсрэгээр авбал маш өөр огноонд унана. 1970 оношилгооны замын тулд үз Unix Timestamp секунд ба миллисекунд: огноо яагаад 1970 харуулдаг вэ.
new Date(1720000000);
// 1970-01-20T21:46:40.000Z
Секунд дэх Unix timestamp-ийг хэрхэн хөрвүүлэх
Секундийг 1000-аар үржүүлж миллисекунд ав. JavaScript Date миллисекундэд суурилсан тул new Date(timestamp * 1000) хэрэглэ.
const timestamp = 1720000000;
const date = new Date(timestamp * 1000);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Миллисекунд timestamp-ийг хэрхэн хөрвүүлэх
Миллисекундийг Date-д шууд өг. Аль хэдийн миллисекунд байсан timestamp-ийг дахин 1000-аар үржүүлж болохгүй.
const timestamp = 1720000000000;
const date = new Date(timestamp);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Нэг timestamp яагаад өөр цаг харуулдаг вэ?
Unix timestamp нэг мөч. Түүнийг UTC, орон нутгийн цаг, эсвэл сонгосон IANA бүсээр харуулах нь цагийн нүүрийг өөрчилнө. 1720000000000-д UTC нь 2024-07-03 09:46:40. America/New_York тэр өдөр 2024-07-03 05:46:40 (EDT). Asia/Seoul нь 2024-07-03 18:46:40 (UTC+9). Нью-Йорк, Сөүлийн эдгээр утга Intl-ээс ирдэг, тогтмол шилжилтийн уриагаас биш.
Unix timestamp цагийн бүстэй юу?
Үгүй. America/New_York эсвэл Asia/Seoul хадгалахгүй. Timestamp нэг мөчийг тодорхойлно. Цагийн бүс тэр мөчийг уншигдах огноо, цаг болгон форматлахад хэрэглэгдэнэ. Epoch UTC-тэй харьцуулан тодорхойлогдсон; тоо өөрөө «UTC цагийн бүсийн талбар» биш.
Unix Timestamp ISO 8601-ийн эсрэг
1720000000 ба 2024-07-03T09:46:40Z нэг мөчийг илэрхийлж болно. Unix бол өнгөрсөн хугацааны тоон утга. ISO 8601 бол уншигдах огноо-цагийн мөр бөгөөд Z (UTC) эсвэл тоон шилжилтээр төгсөж болно. Z нь UTC; заримдаа Zulu гэнэ. Нэг формат биш.
Одоогийн Unix timestamp-ийг хэрхэн авах вэ?
JavaScript-д Date.now() миллисекунд. Math.floor(Date.now() / 1000) секунд. Нийтлэлд «одоо»-г хатуу бичиж болохгүй; энэ хөдөлнө.
Date.now();
Math.floor(Date.now() / 1000);
Огноог дахин Unix timestamp руу хөрвүүлж болох уу?
Тийм. Тодорхой UTC ISO мөрөөс getTime() миллисекунд буцаана; секундийн тулд 1000-аар хуваагаад доош тоймло.
const date = new Date("2024-07-03T09:46:40Z");
date.getTime();
// 1720000000000
Math.floor(date.getTime() / 1000);
// 1720000000
Хоёрдмол утгатай огнооны форматад болгоомжтой бай
03/07/2024 бүс нутгаас хамаарч 3-р сарын 7 эсвэл 7-р сарын 3 байж болно. Цагийн бүс эсвэл шилжилттэй ISO-хэв маягийн огноо, цагийг илүүд үз. Огноо, цаг хөрвүүлэгч 01/02/2026 зэрэг хоёрдмол тоон огноог татгалзаж, огноо сонгогч эсвэл ISO-хэв маягийн утга асууна.
Зуны цаг яах вэ?
Unix timestamp зуны цагийн туг хадгалахгүй. Орон нутгийн харагдах байдал бүсийн дүрмийг хэрэглэнэ. America/New_York өвөл, зун өөр шилжилт хэрэглэдэг тул «Нью-Йорк UTC-5» үргэлж үнэн биш.
Unix timestamp нэмэлт секунд багтаадаг уу?
Ердийн POSIX/Unix цаг нэмэлт секундийг тасралтгүй шкала дээр нэмэлт SI секунд гэж тоолохгүй. Платформ өөр байж болно. Өдөр тутмын хөрвүүлэлтэд энэ нарийн ширийн зүйлийг үл тоомсорлож болно.
Unix timestamp хөрвүүлэлтийн түгээмэл алдаа
Эдгээр төөрөгдөл буруу огноо эсвэл буруу цагийн нүүр өгнө:
Секундийг миллисекунд гэж үзэх
Орчин үеийн секундийн утга JavaScript Date-д 1970 орчимд сууна.
Миллисекундийг секунд гэж үзэх
Огноо хол ирээдүй рүү үсэрнэ.
10 эсвэл 13 оронг хууль гэж үзэх
Оронгийн тоо бол шинж тэмдэг, баталгаа биш.
UTC-г орон нутгийн цагтай холих
Мөч ижил; харагдах цаг өөр байж болно.
Тоон дотор цагийн бүс байна гэж үзэх
IANA нэрс харуулах үед хэрэглэгдэж, timestamp-д хадгалагдахгүй.
Хоёрдмол огноо, зуны цагийн уриа, эсвэл илүү ×1000
ISO-хэв маягийн оролт хэрэглэ. Миллисекунд timestamp-ийг дахин үржүүлж болохгүй.
Баталгаажсан UTC жишээ
Эдгээр UTC цагийг тооцсон, таамаглаагүй:
| Оролт | Нэгж | UTC |
|---|---|---|
| 0 | секунд | 1970-01-01 00:00:00 |
| 1720000000 | секунд | 2024-07-03 09:46:40 |
| 1720000000000 | миллисекунд | 2024-07-03 09:46:40 |
| 1720000000 | миллисекунд | 1970-01-20 21:46:40 |
Энгийн хөрвүүлэлтийн шийдвэрийн гарын авлага
Эх сурвалж нэгжийг нэрлэсэн бол түүнийг хэрэглэ. Үгүй бол оронгийн тоо шинж—дараа нь огноо итгэлтэй харагдахыг шалга. API-д ms хэрэгтэй бол секундийг миллисекунд болго. Харуулахад UTC, орон нутгийн, эсвэл IANA бүс сонго. ISO 8601 хадгалах, солилцоход хэрэгтэй.
- Unix timestamp байна
- Нэгж заасан уу? Түүнийг хэрэглэ; үгүй бол хэмжээг хар
- Секунд үү? API-д миллисекунд хэрэгтэй бол ×1000
- Миллисекунд үү? ms суурьтай API-д шууд хэрэглэ
- UTC, орон нутгийн, эсвэл IANA бүсээр харуул
- Мөр хэрэгтэй юу? ISO 8601 тохирч магад
Timestamp цаг хугацааны цэгийг тодорхойлно. UTC, орон нутгийн цаг, эсвэл цагийн бүс зөвхөн тэр мөч хүнд хэрхэн харагдахыг шийднэ.
Браузерт Unix timestamp хөрвүүл
NEXNARA Огноо, цаг хөрвүүлэгч Unix секунд, миллисекунд хөрвүүлж, UTC, орон нутгийн цаг, ISO 8601 харуулж, IANA цагийн бүсүүдийн хооронд хөрвүүлнэ.
Unix горим секунд, миллисекунд, авто нэгж, одоогийн цаг, огнооноос timestamp-ийг дэмжинэ. Цагийн бүсийн горим IANA нэр хайж, браузерийн бүс хэрэглэж, зуны цагийг харгалзсан Intl шилжилт хэрэглэнэ. Форматын горимд бүс нутгаар уншигдах гаралт, 12/24 цагийн харагдах байдал, хоёрдмол огнооны хамгаалалт бий. Огнооны зөрүү тусдаа горим.
Хөрвүүлэлт браузерийн Date болон Intl API-г хэрэглэнэ. Date төлөөлж чадахгүй утгыг татгалзана. Авто нэгж 11–12 оронтой утгыг таамаглахгүй; секунд эсвэл миллисекунд сонго.
Огноо, timestamp хөрвүүлэлт өөрөө таны браузерт болно. Оролтыг хөрвүүлэхээр NEXNARA серверт илгээдэггүй. Зар болон сайтын бусад функц сүлжээ хэрэглэсээр байна.
Огноо, цаг хөрвүүлэгч дээр timestamp нааж, нэгж сонгохоосоо өмнө UTC, орон нутгийн цаг, ISO 8601-ийг харьцуул.
FAQ
Unix timestamp-ийг огноо руу хэрхэн хөрвүүлэх вэ?
Нэгжийг мэд. JavaScript-д секундэд new Date(n * 1000) хэрэглэ. Миллисекундэд new Date(n). Дараа нь UTC, орон нутгийн, эсвэл бүсээр форматла.
Unix timestamp секунд үү, миллисекунд үү?
Аль аль нь байж болно. Ойролцоогоор 10 орон ихэвчлэн секунд, ойролцоогоор 13 миллисекунд, гэхдээ энэ эвристик, дүрэм биш.
Миний timestamp яагаад 1970 харуулдаг вэ?
Ихэвчлэн секундийн утгыг миллисекунд гэж уншсан. Үз Unix Timestamp секунд ба миллисекунд: огноо яагаад 1970 харуулдаг вэ.
Unix timestamp үргэлж UTC юу?
Epoch UTC-тэй харьцуулан тодорхойлогдсон бөгөөд тоо нэг мөчийг тодорхойлно. Харуулах цагийн бүс тусдаа. Хадгалсан «UTC цагийн бүсийн талбар» биш.
Unix timestamp цагийн бүстэй юу?
Үгүй. IANA тодорхойлогч авч явдаггүй. Цагийн бүс мөчийг форматлахад хэрэглэгдэнэ.
Огноог Unix timestamp руу хэрхэн хөрвүүлэх вэ?
UTC ISO мөрөөс date.getTime() миллисекунд; Math.floor(date.getTime() / 1000) секунд.