Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Temporal - TypeScript 6.0で始める新しい日時API
Search
karukan029
June 10, 2026
330
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Temporal - TypeScript 6.0で始める新しい日時API
karukan029
June 10, 2026
More Decks by karukan029
See All by karukan029
tsgoを触ってみて得た学び
karukan029
0
1.2k
Nxはいいぞ! monorepoプロジェクトにおける 差分検知を活用した型チェック最適化
karukan029
0
2.2k
AI疲れに効く、フロントエンドのワークフロー整備
karukan029
1
1k
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
170
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
Are puppies a ranking factor?
jonoalderson
1
3.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Accessibility Awareness
sabderemane
1
140
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Curse of the Amulet
leimatthew05
1
13k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
Documentation Writing (for coders)
carmenintech
77
5.4k
Building an army of robots
kneath
306
46k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
190
Transcript
© Findy Inc. 2026.06.10 TSKaigi Night talks 〜after conference〜 Temporal
- TypeScript 6.0で始める 新しい⽇時API 1 甲斐 和基 ファインディ株式会社 フロントエンドエンジニア @karukan029
© Findy Inc. 2026年になり、Temporalの名前を 聞く機会が多くあった 2
© Findy Inc. 3 2026年のTemporal周りの動き • 2⽉ ◦ TypeScript 6.0
Betaで組み込み型としてTemporalが追加 ◦ https://devblogs.microsoft.com/typescript/announcing-typescri pt-6-0-beta/#new-types-for-temporal • 3⽉ ◦ Temporal がTC39 Process Stage 4に追加 ◦ https://github.com/tc39/agendas/blob/main/2026/03.md • 5⽉ ◦ Node.js v26リリース、実験的フラグなしでTemporalが使⽤可能に ◦ https://nodejs.org/ja/blog/release/v26.0.0
© Findy Inc. Temporalとは? 4
© Findy Inc. 5 Temporalとは? • Dateの課題を解決し、Dateを置き換えるものとして設計された新しい ⽇時 API です。
© Findy Inc. 6 Date APIの課題 • ミュータブルなメソッドを持ち、意図しない変更を発⽣させるリスクが ⾼い •
⽉が0始まりで分かりづらい • ローカルのタイムゾーンとUTC以外のタイムゾーンをサポートしていな い • パースの挙動が予測しづらい ◦ パースに失敗してもエラーをthrowせず、Invalid Date という値を返 す ◦ ⽇付⽂字列のフォーマットでタイムゾーンを解釈される • グレゴリオ暦のみのサポート
© Findy Inc. 7 Temporalでどのように解決されたか • イミュータブルなメソッドを持ち、 すべてのメソッドが新しいオブジェ クトを返すため、意図しない変更を発⽣させるリスクが低い ◦
簡単な⽇時の計算ロジックはTemporalで完結できる部分も増えた • ⽉が1始まりで分かりやすい • 任意のタイムゾーン情報を持たせることが可能 • パースの仕様が厳密 ◦ パースに失敗するとエラーをthrowする ◦ Temporalは(PlainDate/Instant/ZonedDateTimeなど)でタイム ゾーンの有無やデータの構造を明⽰的に区別 • グレゴリオ暦以外の暦をサポート
© Findy Inc. 8 Temporalの構造 • ZonedDateTime … タイムゾーンと暦を持つ •
Instant … タイムスタンプ • PlainDateTime … タイムゾーンを持たない⽇付と時刻 • PlainDate / PlainTime … ⽇付だけ / 時刻だけ • PlainYearMonth/ PlainMonthDay … 年⽉だけ / ⽉⽇だけ • Duration … 2つの時点間の差分
© Findy Inc. 9 Temporalの構造 https://tc39.es/proposal-temporal/docs/#object-relationship
© Findy Inc. 10 Temporalの構造 https://tc39.es/proposal-temporal/docs/#string-persistence-parsing-and-formatting
© Findy Inc. 11 Temporalでどのように解決されたか • イミュータブルなメソッドを持ち、 すべてのメソッドが新しいオブジェ クトを返すため、意図しない変更を発⽣させるリスクが低い ◦
いくつかメソッドも追加されており、簡単な⽇時の計算ロジックは Temporalで完結できるように • ⽉が1始まりで分かりやすい • 任意のタイムゾーン情報を持たせることが可能 • パースの仕様が厳密 ◦ パースに失敗するとエラーをthrowする ◦ Temporalは(PlainDate/Instant/ZonedDateTimeなど)でタイム ゾーンの有無やデータの構造を明⽰的に区別 • グレゴリオ暦以外の暦をサポート
© Findy Inc. Temporalは⽇時操作ライブラリを 不要にするのか? 12
© Findy Inc. 13 Temporalは⽇時操作ライブラリを不要にするのか? • 今までより⽇時操作ライブラリが担う役割は⼩さくなるかもしれない が、完全に不要にするものではない • 簡単な⽇時の計算ロジックやタイムゾーン関連、不正な値の処理などは
Temporalで扱えるようになる • 柔軟なフォーマットやより具体的なユースケースに沿った⽇時操作のロ ジックは引き続き⽇時操作ライブラリが担う
© Findy Inc. Temporalのサポート状況 14
© Findy Inc. 15 Temporalのサポート状況 • ブラウザ:Chrome / Edge /
Firefox ✅ Safari ⚠ • JavaScriptランタイム:Node.js / Deno ✅ Bun ❌ ◦ Node.js は v24(LTS)では実験的フラグ付き、v26で完全サポート • 本番投⼊にはまだポリフィルが必要 ◦ https://github.com/js-temporal/temporal-polyfill ◦ https://github.com/fullcalendar/temporal-polyfill ◦ https://github.com/fabon-f/temporal-polyfill-lite
© Findy Inc. まとめ 16
© Findy Inc. 17 まとめ • TemporalはDateの課題を解決し、Dateを置き換えるものとして設計さ れた新しい⽇時 API •
⽇時操作ライブラリを完全に置き換えるものではない ◦ 単純な⽐較や計算ロジックは代替できるが、より複雑な⽇時操作の ユーティリティとして活⽤するメリットは残る • まだ未サポートの環境があるため、本番導⼊時はポリフィルを使う ◦ Stage 4なので、近いうちにサポートされる可能性は⾼そう?
© Findy Inc. 18 もっと詳しく知りたい⽅へ • https://tc39.es/proposal-temporal/docs/ja/index.html • https://tc39.es/proposal-temporal/docs/cookbook.html •
https://github.com/tc39/proposal-temporal • https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Gl obal_Objects/Temporal
© Findy Inc. ご清聴ありがとうございました! 19