“Moment.js 是一个JavaScript 日期处理类库,用于解析、检验、操做、以及显示日期.” —— 官方如是说道bash
这个日期处理库基本上贯彻了小而美的原则,基本上你能想到的对日期的操做和格式化里面都有,支持多种语言的转换,也有官方的中文文档。函数
用到这个库是由于工做需求要手撸一个价格日历,找了一下没有合心意的库,在找的过程当中发现好几个开源的日历组件都用到了这个库,一用果真美滋滋。spa
官方文档的地址为http://momentjs.cn/docs/,文档里面方法太多了,下面介绍几个经常使用的方法,包括日期对象构建、日期格式化、日期加加减减、年月日的置换,基本能实现出一个日历该有的全部功能。code
moment('2017 02 03')
moment('2017-1-3')
moment('2017 1 1')
复制代码
moment('2018 1 1').format('YYYY-MM')
=> '2018-01'
moment().format("dddd, MMMM Do YYYY");
=> "Sunday, February 14th 2010"
复制代码
moment('2018-01-01').add(2, 'year')
=> '2020-01-01'
复制代码
moment('2013-01-31').set('month', 1).format('YYYY-MM-DD')
=> '2013-02-28' //二月只到28号
复制代码
moment(departureDate).diff(moment(), 'days');
复制代码
moment().isBetween(item.startDate, item.endDate)
复制代码
moment('2010-10-20').isSame('2010-10-20')
复制代码
上面只是我我的经验总结出来的一些方法,详细参数和更多方法可查阅官方文档http://momentjs.cn/docs/orm
很欣赏这个库,函数式的写法十分清新,光看名字就能知道什么方法能够作什么,边界保护写的很好,源码也是功能模块划分的整整齐齐,从里到外都让人十分舒服。对象