Temporal: A 9-year journey to fix time in JavaScript
2 months ago
- #JavaScript
- #Temporal
- #DateTime
- Temporal 是一个新的 JavaScript API,用于处理日期和时间,旨在取代存在问题的 Date 对象。
- JavaScript 中的 Date 对象最初于 1995 年从 Java 移植而来,导致了诸如可变性、月份计算不一致和解析歧义等问题。
- Temporal 提供了不可变的、时区感知和日历感知的日期时间类型,解决了 Date 的缺陷。
- Temporal 的提案始于 2017 年,并于 2024 年达到 Stage 4,成为 ECMAScript 规范(ES2026)的一部分。
- Temporal 包含 ZonedDateTime、Instant、PlainDate 和 Duration 等类型,提供了精确且灵活的日期时间处理能力。
- Temporal 的实现涉及 Bloomberg、Microsoft、Google 和 Igalia 等公司的协作,并得到了 temporal_rs 库的支持。
- Temporal 已在 Firefox、Chrome 和 Edge 等主流浏览器以及 TypeScript 和 Node.js 中得到支持。
- 未来的工作包括将 Temporal 与日期选择器和 DOMHighResTimeStamp 等 Web API 集成。
- Temporal 代表了 JavaScript 日期时间处理的重大改进,通过社区协作解决了长期存在的问题。