Moment.js 简单易用的轻量级 JavaScript 日期处理类库
Moment.js 是一个简单易用的轻量级 JavaScript 日期处理类库,提供了日期格式化、日期解析等功能。它支持在浏览器和 NodeJS 两种环境中运行。此类库能够将给定的任意日期转换成多种不同的格式,具有强大的日期计算功能,同时也内置了能显示多样的日期形式的函数。另外它也支持多种语言,你可以任意新增一种新的语言包。
Moment.js 不依赖任何第三方库,支持字符串、Date、时间戳以及数组等格式,可以像 PHP 的 date() 函数一样,格式化日期时间,计算相对时间,获取特定时间后的日期时间等等。
安装方式
你可以使用你熟悉的软件安装包安装 Moment.js
bower install moment --save # bower npm install moment --save # npm Install-Package Moment.js # NuGet spm install moment --save # spm meteor add momentjs:moment # meteor
如果你还不知道上面的东西,你可以点击下面的按钮下载 Moment.js 源文件
moment.js
moment.min.js 12.4k
moment+多语言支持.js
moment+多语言支持.min.js 45.4k
使用方法
接下来我们将简单的介绍如何使用Moment.js,更加详细的高级用法参见参数部分。
日期格式化
moment().format('MMMM Do YYYY, h:mm:ss a'); // 十二月 8日 2015, 2:36:37 下午 moment().format('dddd'); // 星期二 moment().format("MMM Do YY"); // 12月 8日 15 moment().format('YYYY [escaped] YYYY'); // 2015 escaped 2015 moment().format(); // 2015-12-08T14:36:37+08:00
相对时间
moment("20111031", "YYYYMMDD").fromNow(); // 4 年前 moment("20120620", "YYYYMMDD").fromNow(); // 3 年前 moment().startOf('day').fromNow(); // 15 小时前 moment().endOf('day').fromNow(); // 9 小时内 moment().startOf('hour').fromNow(); // 37 分钟前
日历时间
moment().subtract(10, 'days').calendar(); // 2015年11月28日 moment().subtract(6, 'days').calendar(); // 上周三下午2点36 moment().subtract(3, 'days').calendar(); // 上周六下午2点36 moment().subtract(1, 'days').calendar(); // 昨天下午2点36分 moment().calendar(); // 今天下午2点36分 moment().add(1, 'days').calendar(); // 明天下午2点36分 moment().add(3, 'days').calendar(); // 本周五下午2点36 moment().add(10, 'days').calendar(); // 2015年12月18日
多语言支持
moment().format('L'); // 2015-12-08 moment().format('l'); // 2015-12-08 moment().format('LL'); // 2015年12月8日 moment().format('ll'); // 2015年12月8日 moment().format('LLL'); // 2015年12月8日下午2点36分 moment().format('lll'); // 2015年12月8日下午2点36分 moment().format('LLLL'); // 2015年12月8日星期二下午2点36分 moment().format('llll'); // 2015年12月8日星期二下午2点36分
可选自定义参数
Moment.js 提供了丰富的说明文档,使用它还可以创建日历项目等复杂的日期时间应用。我们日常开发中最常用的是格式化时间,下面我把常用的格式制作成表格说明供有需要的朋友查看:
格式代码 | 说明 | 返回值例子 |
M | 数字表示的月份,没有前导零 | 1到12 |
MM | 数字表示的月份,有前导零 | 01到12 |
MMM | 三个字母缩写表示的月份 | Jan到Dec |
MMMM | 月份,完整的文本格式 | January到December |
Q | 季度 | 1到4 |
D | 月份中的第几天,没有前导零 | 1到31 |
DD | 月份中的第几天,有前导零 | 01到31 |
d | 星期中的第几天,数字表示 | 0到6,0表示周日,6表示周六 |
ddd | 三个字母表示星期中的第几天 | Sun到Sat |
dddd | 星期几,完整的星期文本 | 从Sunday到Saturday |
w | 年份中的第几周 | 如42:表示第42周 |
YYYY | 四位数字完整表示的年份 | 如:2014 或 2000 |
YY | 两位数字表示的年份 | 如:14 或 98 |
A | 大写的AM PM | AM PM |
a | 小写的am pm | am pm |
HH | 小时,24小时制,有前导零 | 00到23 |
H | 小时,24小时制,无前导零 | 0到23 |
hh | 小时,12小时制,有前导零 | 00到12 |
h | 小时,12小时制,无前导零 | 0到12 |
m | 没有前导零的分钟数 | 0到59 |
mm | 有前导零的分钟数 | 00到59 |
s | 没有前导零的秒数 | 1到59 |
ss | 有前导零的描述 | 01到59 |
X | Unix时间戳 | 1411572969 |
相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论