OSS探訪

JavaScriptのDateを純粋関数でformat・比較・加減算し、必要な関数だけ読み込む

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
36,649
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2026/09/22
ページ内ナビ

概要

date-fnsは、JavaScriptのDateをそのまま使いながら日付のformat、比較、加減算、期間計算などを行うutility libraryです。200以上の関数を個別に読み込め、純粋関数として新しいDateを返す設計、TypeScript型、locale、v4のtime zone対応を備えます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

200以上の日付操作を関数単位で利用する

format、比較、加減算、interval処理などを独立した関数として提供します。必要な関数だけをimportでき、tree shakingしやすい構成です。

出典:[2]

native Dateを拡張せず純粋関数で扱う

JavaScript標準のDateを入力に使い、core objectを拡張せず、新しいDateを返すimmutableな関数として日付処理を組み立てられます。

出典:[2]

向いている用途

Web・Node.jsで日付表示や業務日付計算を共通化したい場合に向く

画面表示用format、期限計算、期間比較、locale別表示など、アプリケーション内の日付処理を小さな関数へ分解して共有したい用途に向きます。

出典:[2]

導入前の確認

time zone処理ではv4の対応方法を明示する

v4はtime zoneをfirst-classに扱う系統ですが、ローカル時刻と対象zoneの境界を曖昧にすると意図しない日時になります。入出力でどのtime zoneを基準にするかをアプリ側で定義してください。

出典:[2]

CDN利用ではdate-fns本体のscriptを新規採用しない

v4.4.0ではdate-fns package内のCDN scriptsがdeprecatedになり、次majorで削除予定です。CDNが必要な場合は新しい@date-fns/cdn packageへ移行します。

出典:[3]

参考にした公式資料

  1. [1]date-fns/date-fns repository(2026-09-30)
  2. [2]date-fns README(2026-09-30)
  3. [3]date-fns v4.4.0 release(2026-09-30)
編集部からの補足

日付処理を関数単位で選べるため、巨大な日時APIを抱えずに必要な処理だけ組み込めます。v4.4.0では旧CDN scriptsが非推奨なので、CDN前提の既存実装は移行先も確認してください。

3ステップで試す

  1. 1

    date-fnsを追加

    公式READMEの手順でJavaScript/TypeScriptプロジェクトへdate-fnsを追加します。

    npm install date-fns --save
  2. 2

    必要な日付関数だけを読み込む

    利用する関数を名前付きimportし、不要な機能をまとめて読み込まない構成にします。

    import { format } from 'date-fns';
  3. 3

    Dateをformatして確認

    READMEと同じ形式でnative Dateを'2014-02-11'へformatできることを確認します。

    format(new Date(2014, 1, 11), 'yyyy-MM-dd');
公式READMEで確認

成長

成長の推移 · 直近30日

36,649 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
8
Open PR
359

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • javascript
  • date
  • modules
  • utilities
  • nodejs
  • time
  • date-fns
  • hacktoberfest
Stars
36,649
Forks
2,020
Watchers
205
Open Issues
669
Contributors
395
所有者種別
Organization
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2026/09/22

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?
date-fnsとは?JavaScriptの日付処理を純粋関数で組み立てる | OSS探訪