moment.js是一个前端比较方便的时间操作库,该库大小不到20k。操作起来却非常简单,且支持多语言功能(多语言库的大小要偏大些,大概70kb)左右,我们可以根据需求进行选择。
moment下载与安装
首先这里给贴出momentjs的中文官网,官网的说明相对而说应该是比较全面的。然后也会贴出写常用的moment cdn、以及npm等下载使用方式。
常见CDN
1. Staticfile CDN
2.BootCDN
依赖安装(node方式)
npm install moment --save # npm
yarn add moment # Yarn Install-Package Moment.js # NuGet
spm install moment --save # spm
meteor add momentjs:moment #
meteor bower install moment --save # bower (废弃)
momentjs基础使用
本文的所有使用方式都是基于npm依赖引用方式。
1、日期格式化
import moment from 'moment';
moment().format('MMMM Do YYYY, h:mm:ss a'); // 十二月 1日 2021, 11:02:13 上午
moment().format('dddd'); // 星期三 moment().format("MMM Do YY"); // 12月 1日 21
moment().format('YYYY [escaped] YYYY'); // 2021 escaped 2021
moment().format(); // 2021-12-01T11:02:13+08:00
2、相对时间
import moment from 'moment';
moment("20111031", "YYYYMMDD").fromNow(); // 10 年前
moment("20120620", "YYYYMMDD").fromNow(); // 9 年前
moment().startOf('day').fromNow(); // 11 小时前
moment().endOf('day').fromNow(); // 13 小时内
moment().startOf('hour').fromNow(); // 2 分钟前
3、多语言支持
import moment from 'moment';
moment.locale(); // zh-cn
moment().format('LT'); // 11:02
moment().format('LTS'); // 11:02:13
moment().format('L'); // 2021/12/01
moment().format('l'); // 2021/12/1
moment().format('LL'); // 2021年12月1日
moment().format('ll'); // 2021年12月1日
moment().format('LLL'); // 2021年12月1日上午11点02分
moment().format('lll'); // 2021年12月1日 11:02
moment().format('LLLL'); // 2021年12月1日星期三上午11点02分
moment().format('llll'); // 2021年12月1日星期三 11:02
4、时间比较
import moment from 'moment';
moment(curTime).diff(moment(createTime), 'days') // 如果curTime不传,表示当前时间
const startTime= moment('16:24:33 04/28/20',format);
const endTime = moment('20:24:33 04/28/20',format);
const diff1 = moment(endTime).diff(moment(startTime), 'years')
const diff2 = moment(endTime).diff(moment(startTime), 'months')
const diff3 = moment(endTime).diff(moment(startTime), 'days')
const diff4 = moment(endTime).diff(moment(startTime), 'minutes' )
const diff5 = moment(endTime).diff(moment(startTime), 'seconds')
// 得到的数字 判断正负即可 (存在 diff = 0 的情况 即为第一条时间相等的情况)