← [ BACK_TO_NOTES ]

date-fns库的使用

date-fns 日期时间处理库

#javascript #howto #growing

date-fns 库的使用

现代 JavaScript 日期处理库,模块化、轻量、不可变

中文文档 | 官方文档


安装

bash pnpm add date-fns


核心函数

格式化日期

“javascript import { format, formatDistance, formatRelative } from ‘date-fns’ import { zhCN } from ‘date-fns/locale’

// 基础格式化 format(new Date(), ‘yyyy-MM-dd HH:mm:ss’) // => “2025-12-08 14:30:00”

format(new Date(), ‘yyyy年MM月dd日 EEEE’, { locale: zhCN }) // => “2025年12月08日 星期日” “

相对时间

“javascript // 距离当前时间 formatDistance(new Date(2025, 11, 1), new Date(), { addSuffix: true, locale: zhCN }) // => “7天前”

// 相对日期 formatRelative(new Date(2025, 11, 7), new Date(), { locale: zhCN }) // => “昨天 14:30” “


常用格式化符号

符号说明示例
yyyy4位年份2025
MM2位月份12
dd2位日期08
HH24小时制14
mm分钟30
ss秒00
EEEE星期全称星期日
EEE星期缩写周日

日期计算

“javascript import { addDays, subMonths, differenceInDays, isAfter } from ‘date-fns’

// 加减日期 addDays(new Date(), 7) // 7天后 subMonths(new Date(), 1) // 1个月前

// 计算差值 differenceInDays(endDate, startDate) // 相差天数

// 日期比较 isAfter(date1, date2) // date1 是否在 date2 之后 “


与其他库对比

特性date-fnsMoment.jsDay.js
体积按需引入~300KB~2KB
不可变✅❌✅
Tree-shaking✅❌✅
维护状态活跃停止维护活跃

相关笔记

创建于 2025/7/25 更新于 2026/7/15
Digital Biome
Access

键盘导航

j / k / ↑ / ↓
选择对象
Enter / o
打开选择
/ 或 Ctrl+K
全站搜索
i / f / 1–4
筛选当前列表
g → h / l / p / t / a
首页 / 笔记 / 项目 / 工具 / About
r → 1–9
打开所选对象的关联
u
返回上一页
Esc
关闭浮层 / 取消命令;输入框内清空文本