• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > Day.js :一个非常好用的轻量的处理时间和日期库

Day.js :一个非常好用的轻量的处理时间和日期库

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了Day.js,时间和日期库等相关知识,希望对您有所帮助

Day.js 是一个轻量的处理时间和日期的 JavaScript 库。平时项目中笔者也常用dayjs,它确实很好用。Day.js有着几乎和Moment.js一样的API,因此如果你用过Moment.js,那么也可以轻松使用Day.js。本文将讲解项目中最常用的时间日期处理方法。

此外,Moment.js目前维护升级不太明了,而Day.js始终在维护,并且Day.js只有2KB大小,比Moment.js小很多。我们一般在Vue项目中使用,当然实际它与你用什么框架无关。

安装

我们使用npm安装day.js。

npm install dayjs --save

然后使用import引入day.js。

import dayjs from 'dayjs'

使用

1、当前时间

想要获取当前时间,只需一句代码:

dayjs()

要想将时间格式化输出,可以使用format:

dayjs().format('YYYY-MM-DD HH:mm:ss')


2、解析时间戳

dayjs可以接收一个时间戳(毫秒)参数,并将其转换为时间格式:

dayjs(1601121636123).format('YYYY-MM-DD HH:mm:ss')


3、N时间前

day.js可以轻松获取N小时/天/月/年前等时间,如以下代码获取的是一个月前的时间:

dayjs().subtract(1, 'month')

代码中用来表示月份参数:month,可以换成其他表示不同的时间单位:year(年),month(月),day(日),hour(时),minute(分),second(秒),millisecond(毫秒),week(周)。


4、N时间后

day.js也可以轻松获取N时间后的时间,如以下代码获取的是7天后的时间:

dayjs().add(7, 'day')


5、开始时间

day.js可以获取一月/一周等的开始时间,如以下代码获取本周第一天的时间(星期一):

dayjs().startOf('week')


6、末尾时间

day.js可以获取一月/一周等的末尾时间,如以下代码获取本月最后一天时间:

dayjs().endOf('month')


7、两个时间差

day.js可以获取两个不同时间的差,如2020-09-25和2020-06-05相差112天:

const date1 = dayjs('2020-09-25');date1.diff('2020-06-05', 'day'); // 112


8、Unix 时间戳

day.js可以轻松转换秒级和毫秒级时间戳:

dayjs().unix(); //秒dayjs().valueOf(); //毫秒


9、获取月份天数

day.js可以轻松获取一个月的天数是30天还是31天还是28或29天。

dayjs().daysInMonth() //30,(2020年9月共30天)


10、距离当前时刻

我们经常看到显示“1分钟前”、“3小时内”等时间转换后显示效果,dayjs也可以轻松实现:

dayjs('2020-09-27 18:22:32').fromNow(); //3小时前dayjs('2020-09-26 10:22:32').toNow(); //1天内

fromNow()表示距离当前时刻,toNow()表示相对当前时刻,其实感觉意思差不多。

不过要想fromNow()和toNow()生效,需要使用插件 RelativeTime,方法是先引入插件,再执行调用方法:

import relativeTime from 'dayjs/plugin/relativeTime';dayjs.extend(relativeTime);


11、中文本地化

如果要像上面输出“1分钟前”这样的中文内容,需要引入中文语言包:

import 'dayjs/locale/zh-cn';dayjs.locale('zh-cn');

使用以上两句代码后,就可以愉快的输出中文了。


12、格式化时间

使用day.js的 format()可以轻松格式化你需要的时间格式了,如以下代码输出时间格式:2020-09-27 20:57:04

dayjs().format('YYYY-MM-DD HH:mm:ss')

以下表格是从官网摘录的支持时间格式单位:


格式输出描述格式输出描述YY19两位数年份YYYY2019四位数年份M1~12月份,从1开始MM01~12月份,两位数MMMJan~Dec简写的月份名称MMMMJanuary-December完整的月份名称D1~31月份里的一天DD01~31月份里的一天,两位数d0~6一周中的一天,星期天是0ddSu~Sa最简写的一周中一天的名称dddSun-Sat简写的一周中一天的名称ddddSunday-Saturday一周中一天的名称H0~23小时HH00~23小时,两位数h
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Day.js :一个非常好用的轻量的处理时间和日期库

相关文章

  • Photoshop制作由云朵组成的艺术字教程
  • 浅谈Bootstrap Tab标签页切换图表显示问题的解决方法
  • Photoshop制作苹果语音助理Siri图标动画教程
  • phpcms v9添加热门搜索关键词的方法
  • 如何优化uniapp项目?分享几种优化方案及建议
  • 一分钟解决mysql_config not found的问题
  • Wordpress如何调用个人信息
  • 一张图搞定如何在PhpStorm中修改类文件头部作者
  • 替换uploadify用Huploadify实现上传图片或文件
  • 怎样利用Javascript简单实现星空连线的效果

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 一分钟学会PHP中关于封装验证码(上)
    • PHP怎么实现评论回复功能
    • 看看Vue中如何封装一个自动化注册全局组件
    • PHPCMS V9 文章列表循环样式自定义方法
    • 手把手教你在node中怎么优雅打印全链路日志
    • Web移动端Fixed布局的解决方案
    • JavaScript如何替换中间内容
    • dedecms列表页图片加ALT描述的完美方式
    • WordPress使用钩子进行主题开发时怎么避免死循环
    • 详解angular中为HTML元素添加css类的几种方式

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有