首页IT科技时间管理的工具介绍(时间处理工具 dayjs使用示例详解)

时间管理的工具介绍(时间处理工具 dayjs使用示例详解)

时间2025-09-19 14:54:26分类IT科技浏览6995
导读:特点 在 dayjs 之前,还有一个时间处理工具 moment.js,但是它的体积比较大,即使经过压缩压缩之后依然有 80kb 左右。而前者 dayjs 只有 2kb 大小,且具备一致的 API ,所以现在大都使用 dayjs。...

特点

在 dayjs 之前                    ,还有一个时间处理工具 moment.js                          ,但是它的体积比较大        ,即使经过压缩压缩之后依然有 80kb 左右                    。而前者 dayjs 只有 2kb 大小               ,且具备一致的 API                            ,所以现在大都使用 dayjs                          。

体积极小:核心包只有 2kb 大小            ,国际化需要加载对应的语言包          ,可通过插件扩展功能        。 简单易用:和 Moment.js 的 API 设计保持一致               。 不可变:所有的 API 操作都将返回一个新的 Dayjs 对象                            ,避免 bug 产生                ,节约调试时间                           。 国际化:对国际化支持良好     ,默认为英语环境            。

安装和使用

在现代前端应用中                             ,通过 node 包管理工具安装                    ,比如:

pnpm add dayjs

dayjs 的基本架构

dayjs 包暴露了一个全局方法 dayjs,它是一个工厂函数                         ,返回 Dayjs 对象的实例                         ,大致结构如下:

function Dayjs () { // ... } function dayjs () { return new Dayjs() }

所以在使用 dayjs 时    ,每次调用 dayjs 方法                    ,其实都是创建了一个 Dayjs 构造函数的实例          。

基本用法

JavaScript 原生的 Date 日期对象没有提供处理格式化日期时间的方法                          ,需要手动封装        ,可通过引入 dayjs 对日期格式进行处理                            。

Dayjs 原型对象上有一个 format 方法               ,用于格式化日期时间                。它支持多种解析方法                           ,比如时间戳            ,Date 对象实例和合法的日期字符串     。

import dayjs from dayjs // 解析 Date 对象实例 dayjs(new Date()).format(YYYY-MM-HH) // 2022-10-24 // 解析 Unix 时间戳 (毫秒) dayjs(1666617034000).format(YYYY/MM/DD hh:mm:ss) // 2022/10/24 21:10:34 // 解析 Unix 时间戳 (秒) dayjs.unix(1666617034).format(YYYY-MM-DD) // 2022-10-24 // 解析符合 ISO 8601 格式的日期字符串 dayjs(2022-10-24T20:00:00.000Z).format(YYYY-MM-HH hh:mm:ss) // 2022-10-25 04:00:00

国际化

dayjs 默认语言是英语          ,只用来展示时间时没有问题                             。如果要做一些其他的处理                            ,比如计算相对时间                ,此时需要手动导入中文语言包     ,来把一些描述性文字转为中文显示                    。

安装 dayjs 时                             ,会把语言包一并安装下                    ,位于 dayjs/locale 目录下。

import dayjs from dayjs import zhCn from dayjs/locale/zh-cn dayjs.locale(zhCn)

使用插件

在一些场景下,需要显示一条数据创建的相对时间                         ,而非绝对时间                         ,比如朋友圈里的分享    ,论坛里的帖子等等                         。此时可以导入一个插件来实现这个功能                         。

import dayjs from dayjs import relativeTime from dayjs/plugin/relativeTime dayjs.extend(relativeTime) // 距离现在的相对时间 console.log(dayjs().toNow()) // 几秒前 // 某一个日期距离现在的相对时间 console.log(dayjs().to(2022-10-20)) // 5 天前

小结

本文简单介绍了 dayjs 的用法                    ,主要用来格式化日期时间                          ,和计算相对时间        ,以及国际化的处理    。更多的介绍和用法可以阅读官方文档                    。

以上就是时间处理工具 dayjs使用示例详解的详细内容               ,更多关于时间处理工具 dayjs的资料请关注本站其它相关文章!

声明:本站所有文章                           ,如无特殊说明或标注            ,均为本站原创发布                          。任何个人或组织          ,在未征得本站同意时                            ,禁止复制                、盗用                            、采集          、发布本站内容到任何网站            、书籍等各类媒体平台        。如若本站内容侵犯了原著者的合法权益                ,可联系我们进行处理               。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
干货!​如何打造我们自己的“ChatGPT”?| 大佬思辨