人人在项目中一定会碰到许多关于时候处置惩罚的题目,比方你想猎取一个当地时候花样为YYYY-MM-DD,经常运用的要领是先拿到时候再用正则替代什么的。比较贫苦,也比较费力。每次都要弄。所以呢就想着有无什么简朴的要领,以后就发现了一个轻量级的Javascript日期处置惩罚类库:moment.js,运用它能够轻松处理前端开辟中碰到的各种日期时候题目。
moment.js不依赖任何第三方库,支撑字符串、Date、时候戳以及数组等花样,能够像PHP的date()函数一样,花样化日期时候,盘算相对时候,猎取特定时候后的日期时候等等,本文有以下举例。
花样化日期
javascript
moment().format('YYYY-MM-DD HH:mm:ss'); //2014-09-24 23:36:09猎取当前时候 moment().format('MMMM Do YYYY, h:mm:ss a'); // 七月 13日 2015, 10:53:40 上午 moment().format('dddd'); // 星期一 moment().format("MMM Do YY"); // 7月 13日 15 moment().format('YYYY [escaped] YYYY'); // 2015 escaped 2015 moment().format(); // 2015-07-13T10:53:40+08:00
相对时候
javascript
moment("20111031", "YYYYMMDD").fromNow(); // 2011年10月31日间隔如今的时候 moment().startOf('day').fromNow(); // 本日过了多久 moment().endOf('day').fromNow(); // 另有几个小时本日就完毕了 moment().startOf('hour').fromNow(); //这个小时过去了几分钟 moment().add('days',3).format('YYYY-MM-DD'); //三天后的日期
多样化的当地时候
javascript
moment().format('L'); // 2015-07-13 规范当地时候 moment().format('l'); // 2015-07-13 moment().format('LL'); // 2015年7月13日 moment().format('ll'); // 2015年7月13日 moment().format('LLL'); // 2015年7月13日上午10点55 moment().format('lll'); // 2015年7月13日上午10点55 moment().format('LLLL'); // 2015年7月13日星期一上午10点55 moment().format('llll'); //2015年7月13日星期一上午10点55
moment.js供应了雄厚的申明文档。我们一样平常开辟中最经常运用的是花样化时候,下面枚举一下一切的时候花样
花样代码 | 申明 | 例子 |
---|---|---|
YYYY | 4位数字年份 | 2010、2012 |
YY | 两位数字年份 | 15 |
M | 月份的数字值没有前导0 | 1、2…10 |
MM | 月份的数字值有前导0 | 01、02…12 |
MMM | 三个字母缩写的月份 | Jan到Dec |
MMM | 月份的英文全拼 | January到December |
Q | 返回如今是第几个季度 | 1、2、3、4 |
D | 当前是几号,没有前导0 | 1、2…31 |
DDD | 一年中的第几天 | 1、2…365 |
DD | 当前是几号,有前导0 | 01、02…31 |
d | 周几 | 0、1…6,0示意周日,6示意周六 |
ddd | 三个字母的周几缩写 | Sun到Sat |
dddd | 周几全拼 | Sunday到Saturday |
w | 一年中的的几周 | eg:10代表第10周 |
A | 上午或下昼大写 | AM、PM |
a | 小午或下昼大写 | am、pm |
HH | 小时,24小时制,有前导零 | 00、01…23 |
H | 小时,24小时制,无前导零 | 0、1…23 |
hh | 小时,12小时制,有前导零 | 00、01…12 |
hh | 小时,12小时制,无前导零 | 0、1…12 |
mm | 分钟,有前导0 | 00、01…59 |
m | 分钟,无前导0 | 0、1…59 |
ss | 秒,有前导0 | 00、01..59 |
s | 秒,无前导0 | 0、1..59 |
X | Unix时候戳(秒级) | 1410715640.579 |
x | Unix时候戳(毫秒级) | 1410715640579 |
更多有关moment.js的引见,请接见项目官网:http://momentjs.com/
第一次写博文,若有毛病,迎接改正。(*^__^*)