Temporal: Date Time API ใหม่ของ JS
(2ality.com)-
API วันที่/เวลาของ JavaScript แบบเดิมใช้งานยากมาก จึงมีการเสนอ API ใหม่: ปัจจุบันอยู่ที่ Stage 3
-
สามารถเข้าถึงได้ผ่านตัวแปรโกลบอล
Temporal
→ อ็อบเจ็กต์ทั้งหมดเป็น Immutable
→ รองรับไทม์โซน (อิง IANA) และปฏิทินที่ไม่ใช่เกรกอเรียน (รวมถึงปฏิทินตังกีของเกาหลี)
→ มกราคมคือ Month 1
→ แยกเวลาแบบ Wall-Clock (โลคัล) กับเวลาแบบ Exact (UTC)
→ รองรับเวลาแบบ Plain ที่ไม่มีไทม์โซน
- ตัวอย่าง
→ เวลา UTC ปัจจุบัน: Temporal.now.instant().toString()
→ เวลาท้องถิ่นปัจจุบัน: Temporal.now.zonedDateTimeISO('Asia/Seoul').toString()
→ ไทม์โซนปัจจุบัน: Temporal.now.timeZone().toString()
→ Temporal.Duration.from({hours: 3, minutes: 45})
→ แปลงกับ Date แบบเดิม
const legacyDate = new Date('1970-01-01T00:00:01Z')
legacyDate.toTemporalInstant() หรือ Temporal.Instant.fromEpochMilliseconds(legacyDate.getTime())
ยังไม่มีความคิดเห็น