Day.js 是一个轻量级的 JavaScript 日期库,用于解析、验证、操作和显示日期和时间。它具有类似于 Moment.js 的 API,但体积更小,性能更好。
以下是 Day.js 的使用教程:
-
安装 Day.js:可以通过 npm 或 yarn 进行安装,也可以直接在 HTML 文件中引入 Day.js 的 CDN。
- 使用 npm 安装:
npm install dayjs - 使用 yarn 安装:
yarn add dayjs - 使用 CDN 引入:
<script src="https://cdn.jsdelivr.net/npm/dayjs@1.10.4/dayjs.min.js"></script>
- 使用 npm 安装:
-
导入 Day.js:在 JavaScript 文件中导入 Day.js。
- 使用 ES6 模块导入:
import dayjs from 'dayjs' - 使用 CommonJS 导入:
const dayjs = require('dayjs')
- 使用 ES6 模块导入:
-
创建 Day.js 实例:使用
dayjs()函数创建一个 Day.js 实例,可以传入日期字符串、日期对象或时间戳作为参数。const now = dayjs() // 当前日期和时间 const date = dayjs('2022-01-01') // 特定日期 const timestamp = dayjs(1640995200000) // 时间戳 -
格式化日期:使用
format()方法将日期格式化为指定的字符串。const formattedDate = now.format('YYYY-MM-DD') // 2022-01-01Day.js 支持的格式化选项有很多,比如年份(YYYY)、月份(MM)、日期(DD)、小时(HH)、分钟(mm)、秒(ss)等等。可以根据需要自由组合。
-
操作日期:Day.js 提供了一系列方法来操作日期,比如增加、减少、设置、获取等等。
const tomorrow = now.add(1, 'day') // 增加一天 const lastWeek = now.subtract(1, 'week') // 减少一周 const year = now.year() // 获取年份Day.js 的操作日期的方法非常丰富,可以根据具体需求查阅官方文档。
-
比较日期:Day.js 提供了
isBefore()、isSame()和isAfter()方法来比较日期的先后顺序。const isBefore = now.isBefore(date) // 判断是否在指定日期之前 const isSame = now.isSame(date, 'day') // 判断是否与指定日期在同一天 const isAfter = now.isAfter(date) // 判断是否在指定日期之后这些方法可以用于判断日期的先后顺序,非常实用。
-
本地化:Day.js 支持本地化,可以根据不同的语言和地区显示日期和时间。
const localizedDate = now.locale('zh-cn').format('YYYY年MM月DD日') // 2022年01月01日Day.js 内置了一些常见的语言和地区的本地化配置,也可以自定义本地化配置。