日历插件大家相比看的多了,也没什么可说的,五花把门的插件多的是,pc上我相信很多小伙伴用过my97很好用。手机上我们也用过mobiscroll这是我见过手机端最好用的日期选择控件。
今天我们讲的跟这些都不一样,大家有没有想过当你选择了日期后要对日期进行一些处理应该怎么做?
现在我们就来了解一款灰常好用的日期处理插件,他可以运行在nodejs也可以用在页面里。
moment.js使用它可以轻松解决前端开发中遇到的种种日期时间问题。
moment.js不依赖任何第三方库,支持字符串、Date、时间戳以及数组等格式,可以像PHP的date()函数一样,格式化日期时间,计算相对时间,获取特定时间后的日期时间等等。
1、格式化时间
当前时间:
moment().format('YYYY-MM-DD HH:mm:ss'); //2015-05-30 10:36:09
今天是星期几:
moment().format('d'); //6
转换当前时间的Unix时间戳:
moment().format('X');
2、相对时间
20130201相对当前日期是2年前
moment("20130201", "YYYYMMDD").fromNow(); //2 years ago
7天后的日期:
moment().add('days',7).format('YYYY年MM月DD日'); //2014年10月01日
9小时后的时间:
moment().add('hours',9).format('HH:mm:ss');
是不是很easy,有了它我们就可以随心所欲的处理时间,比如我们做一个订房插件,我们希望用户选择到店日期后,自动生成离开日期是第二天,我们就可以使用moment().add实现我们的需求。
废话不多说上手册(这是根据官方翻译过来的,如果要看详细的还是要去官网,或者百度一下)
格式代码 | 说明 | 返回值例子 |
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 |
最后我们上官网:http://momentjs.com/docs/