moment.js的使用方法和日期格式化介绍


moment 被设计为在浏览器和 Node.js 中都能工作

1. node.js

npm install moment

var moment = require('moment');
moment().format();

2.使用方法

  • 日期格式化

初始化日期:moment().format(‘YYYY-MM-DD’);
初始化日期时间:moment().format(‘YYYY-MM-DD HH:mm:ss’);

日期格式化介绍

具体可以查看格式化表日期格式化规范表

MMMM/MMM/MM/M 显示为 一月/一月/01/1
(4个M显示全称,3个M显示缩写,对于中文来说,月份的全称和缩写是一样的,英文就是January和Jan)
dddd/ddd/dd/d
周一/一/01/1

yyyy-MM-dd HH:mm:ss
年-月-日 时:分:秒

小时 hh HH
小写的h是12小时制,大写的H是24小时制

mm与m,它们的区别为是否有前导零
H,m,s表示非零开始,HH,mm,ss表示从零开始
例如:凌晨1点2分
HH:mm显示为 01:02
H:m显示为 1:2

fromNow() 相对时间

moment().fromNow();
moment().fromNow(Boolean);
//今年是2020年
moment([2016, 0, 29]).fromNow(); // 4 年前
moment([2016, 0, 29]).fromNow(true); // 4 年 ,传入 true,则可以获得不带后缀的值。

startOf() endOf()应用场景:
在时间、日期组件使用时,可以禁选当天之前的日期。
时间做比较时使用

startOf() 时间开头

通过将原始的 moment 设置为时间单位的开头来对其进行更改
moment().startOf(‘hour’); // 设置为当前时间, 0 分钟、0 秒钟、0 毫秒
moment().startOf(‘day’);设置为今天的00:00:00;

endOf 时间末尾

通过将原始的 moment 设置为时间单位的末尾来对其进行更改
moment().endOf(‘year’); 设置为今年的12月31号的23:59:59
moment().endOf(‘day’);设置为今天的23:59:59;

subtract() 时间减

moment().format(“YYYY-MM-DD HH:mm:ss”); //当前时间
moment().subtract(10, “days”).format(“YYYY-MM-DD”);//当前时间的前10天时间
moment().subtract(1, “years”).format(“YYYY-MM-DD”);//当前时间的前1年时间
(moment().subtract(3, “months”).format(“YYYY-MM-DD”);//当前时间的前3个月时间
moment().subtract(1, “weeks”).format(“YYYY-MM-DD”);//当前时间的前一个星期时间

add 时间加

moment().add(‘days’,7).format(‘YYYY年MM月DD日’); //当前时间7天后的日期
moment().add(‘hours’,9).format(‘HH:mm:ss’); //当前时间9小时后的时间
this.moment(startDate).add(2, ‘days’).format(‘YYYY-MM-DD’)
指定日期(startDate)加2天并输出格式

获取星期几

this.moment().day() 或 this.moment(startDate).day()
当前日期/指定日期 是星期几`

计算两个时间的差值diff方法

  • 开始时间和结束时间的时间差;endTime和startTime都是毫秒数

moment(endTime).diff(moment(startTime), ‘years’)
moment(endTime).diff(moment(startTime), ‘months’)
moment(endTime).diff(moment(startTime), ‘days’)
moment(endTime).diff(moment(startTime),‘minutes’ )
moment(endTime).diff(moment(startTime), ‘seconds’)

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值